AnnotateMap/SPEC.md
Ashley Yakeley 1834d54985 SPEC.md
2026-02-23 14:21:17 -08:00

30 lines
1.0 KiB
Markdown

# AnnotateMap
This is a website that allows users to log in and drop pins on a map.
Each pin can have some descriptive text.
Everyone can see everyone else's pins, together with the description and the userid of the person who created the pin.
Both front-end and back-end are written in TypeScript.
## Back end
Server data is stored in a Postgres database. This includes pins and account info.
## Front end
The user can pan and zoom the map, on which they can see everyone's pins.
The map view (pan/zoom) is stored locally on their browser.
Each pin looks like a pin icon (similar to Google Maps pins).
Pins belonging to the user appear in a different colour.
When a pin is clicked on, a pop-up shows the description and the username of the user who created it.
Users can create new pins (with descriptions) and delete their own pins.
Map tiles come from some suitable open map server.
## Accounts
Each user has a username and password.
For now, accounts can only be created by running a command-line tool on the server.