This project is under development. The goal is to have a unified site to manage trip plans and reports for outdoor trips.
The high level architecture is:
- A react client, that makes graphql calls to get its data from the server
- A graphql server, running in lambda, backed by a postgres DB and a geohash S3 storage mechanism.
triptracks_tldr digraph G { "React Client"; "React Client" -> "GraphQL Lambda"; "GraphQL Lambda" -> "Django Models" [shape=cylinder]; "GraphQL Lambda" -> "Geohash S3 Routes_map Store" [shape=cylinder]; } triptracks_tldr
cd ./client
npm install -g
cd ./client
npm run start
- install pyenv
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
- install python
pyenv install 3.10 pyenv virtualenv 3.10 tt pyenv activate tt pip install -r requirements.txt
- create the file
scripts/.env
and inside it add:TT_GOOGLE_MAPS_API_KEY=... TT_GOOGLE_CLIENT_ID=... TT_DATABASE_URL=postgresql://docker:docker@localhost:25432/tripplanner TT_STRAVA_CLIENT_SECRET=... TT_STRAVA_ACCESS_TOKEN=... TT_STRAVA_REFRESH_TOKEN=... PORT=8000
source ./scripts/.env
cd ./server
./manage.py runserver
- if you need to clean up space:
- Delete all containers
sudo docker rm $(sudo docker ps -a -q)
- Delete all images
sudo docker rmi $(sudo docker images -q)
- if you really need to scrub, docker's temp folder is at
/var/lib/docker/tmp
- Delete all containers