TimeMap is a tool for exploration, monitoring and classification of incidents in time and space, originally forked from Bellingcat's Civilian Harm Ukraine-Timemap, with special thanks to Forensic Architecture for the original repository: forensic-architecture/timemap.
-
Run
npm install
to install dependencies -
Adjust any local configs in config.js
-
Documentation of config.js
SERVER_ROOT
- points to the API base addressXXXX_EXT
- points to the respective JSONs of the data, for events, sources, and associationsAPI_DATA
- S3 file address that can be downloaded or integrated into external apps/visualizationsMAPBOX_TOKEN
- used to load the custom stylesDATE_FMT
andTIME_FMT
- how to consume the events' date/time from the APIstore.app.map
- configures the initial map view and the UX limitsstore.app.cluster
- configures how clusters/bubbles are grouped into larger clusters, largerradius
means bigger cluster bubblesstore.app.timeline
- configure timeline ranges, zoom level options, and default rangestore.app.intro
- the intro panel that shows on startstore.app.cover
- configuration for the full page cover, thedescription
is a list of markdown entities, can also contain htmlstore.ui.colors
andstore.ui.maxNumOfColors
are applied to filters, as they are selected
-
Easiest way to deploy the static files is through
nvm use 16
npm run build
(rather:CI=false npm run build
)- Copy the files to your server, for example to
/var/www/html
-
-
Run
npm run dev
to start the development server. If you're using a custom config file, prefix the commad withCONFIG=your_custom_config.js
-
For more info visit the original repo
-
Run
npm run build
to build the webapp andpm2 serve build/ 80 --name "map" --spa
to start the server -
If you need to provide any specific env variable for the config in runtime: 6.a modify config.js adding new constant variable e.g.
const api_url = import.meta.env.VITE_API_URL;
variable has to start with the prefix 'VITE_' 6.b assign new created variable to what was previously stored in config dictionary e.g. config = { ... -SERVER_ROOT: "https://api.osintforukraine.com/", +SERVER_ROOT: api_url, ... } 6.c update dynamically .env file by runningecho -e "\nVITE_API_URL=https://api.osintforukraine.com/" >> .env && npm run build
This project is now living in github pages and the API has switched to auto-updated S3 files.
Release with npm run deploy
Please check our issues page for desired contributions, and feel free to suggest your own.