Game exploration: offshore sail races, against real wind conditions, but accelerated: riding from depression to depression, around the world, in a few minutes.
Create a .env at root from sample.env.
Install cargo-watch for auto-reload:
cargo install cargo-watchStart database and tile server:
./server/bin/container upRun migrations and start the server:
cd server
cargo run -- db migrate
./bin/dev-serverStart the client:
cd client
npm install
npm run devPorts:
- Client: http://localhost:3000
- Server: http://localhost:3001
- Martin (tile server): http://localhost:3002
- PostgreSQL: localhost:25432
./server/bin/container up # Start db and martin
./server/bin/container down # Stop containers
./server/bin/container logs # Follow logs
./server/bin/container psql # PostgreSQL shell
./server/bin/container migrate # Run migrations
./server/bin/container destroy # Remove containers and volumesClient:
- React 18 + TypeScript
- Vite
- D3.js for globe projection
- WebGL for wind visualization
- Tailwind CSS
Server:
- Rust with Tokio async runtime
- Warp web framework
- PostgreSQL + PostGIS for wind raster data
- Martin for vector tiles
Import Vendée Globe 2020 GRIB files:
./server/scripts/vlm-vg20.sh