selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
scratch-map logo

Self-host scratch-map

1.2.3

Scratch-off travel map to track visited places

ReleaseOpen SourceAGPL-3.0
Updatedlast year
LanguageJavaScript
Setup difficultyEasy
Stars
411
Ports
3000 (HTTP server (default)), 8080 (HTTP server (Docker default))
Docker
ad3m3r5/scratch-map
Install with Docker
Home page of scratch-mapWorld map viewUS States map viewCanadian map viewExample pop-up for marking a location

What is scratch-map?

scratch-map is a self-hosted web application that provides interactive scratch-off style maps for tracking your travels. It includes maps for the world, US states, Canadian provinces, Australian states, French regions, Mexican states, Japanese prefectures, Spanish autonomous communities, British counties, German states, New Zealand regions, Brazilian states, Chinese provinces, and Indian states. Users can mark locations with the date traveled and attach a photo album URL to each scratch. The app runs as a Node.js/Express server with a lowdb file-based database, and can be deployed via Docker, Docker Compose, npm/yarn, or pm2. Authentication is planned but not yet implemented. The project is licensed under AGPL-3.0.

Should you self-host scratch-map?

scratch-map scores 49/100 on selfhost.directory (how scoring works) and ranks #10 of 12 in Maps. It has 411 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in JavaScript.

Its closest alternative on selfhost.directory is GeoServer (71/100, 4 484 stars). It scores higher overall, so compare the two before you pick. See scratch-map vs GeoServer side by side.

Features

  • Australian Map
  • Brazilian Map
  • British Map
  • Canadian Map
  • Chinese Map
  • Date Tracking
  • French Map
  • German Map
  • Indian Map
  • Japanese Map
  • Mexican Map
  • New Zealand Map
  • Spanish Map
  • US States Map
  • World Map

scratch-map README

How to install scratch-map

Install scratch-map with Docker

Environment variables
PORT, DATA_DIR, ADDRESS, LOG_LEVEL, ENABLE_SHARE

docker run -d --restart=always
--name scratch-map -p 8080:8080
-e PORT=8080 -e DATA_DIR=/my-data-dir
-v /opt/containers/scratch-map/data:/my-data-dir
ad3m3r5/scratch-map:latest

Requires creating data directory and setting permissions first

How to configure scratch-map

  • ADDRESS0.0.0.0Address for app to run on

    Address for app to run on

  • DATA_DIRAPP_DIR/data/Data directory for database storage (recommended outside app dir)

    Data directory for database storage (recommended outside app dir)

  • ENABLE_SHAREfalseEnables/disables view-only /view routes for maps

    Enables/disables view-only /view routes for maps

    values: true, false

  • LOG_LEVELINFOLog level for console output

    Log level for console output

    values: INFO, DEBUG

  • PORT3000Port for app to run on

    Port for app to run on

scratch-map releases & version history

More in Maps

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…