WIP - redo of https://github.com/jacob-horton/mk-scoreboard
Planned improvements/changes:
- Code quality improvements
- Better UI/UX (caching, loading states, animations, responsiveness, etc.)
- Less buggy - manage state properly
- More general - not just for Mario Kart
- Support accounts (so people can have their own scoreboards)
- Use SolidJS instead of React (mainly to learn SolidJS better)
- PNPM
- Rust
- Docker
- Taskfile.dev (optional)
If using Task, you can start the database with:
task db_upThen run the client and server with:
taskNote
The server does not automatically recompile when you make a change. If you want this to happen, install cargo-watch, and then you can use task run_watch.
This uses Postgres running in a docker container.
To start the database with Task:
task db_upTo stop it, run:
task db_downTo run without Task:
cd db
docker compose upTo run with Task:
task serverNote
The server does not automatically recompile when you make a change. If you want this to happen, install cargo-watch, and then you can use task server_watch.
To run without Task:
cd server
cargo runTo run with Task:
task clientTo run without Task:
cd client
pnpm install
pnpm run devOpen http://localhost:3000 to view it in the browser.
pnpm run buildBuilds the app for production to the dist folder.
It correctly bundles Solid in production mode and optimizes the build for the best performance.
The build is minified, and the filenames include the hashes.
Your app is ready to be deployed!