A 2-dimensional multiplayer game with ray tracing.
https://doppler.schmelczer.dev/
- TypeScript 88%
- SCSS 6.5%
- JavaScript 4.2%
- HTML 0.9%
- Dockerfile 0.4%
| .claude | ||
| .forgejo/workflows | ||
| .vscode | ||
| backend | ||
| frontend | ||
| media | ||
| shared | ||
| test | ||
| .dockerignore | ||
| .gitattributes | ||
| .gitignore | ||
| .node-version | ||
| .nvmrc | ||
| .prettierrc | ||
| Dockerfile | ||
| eslint.config.js | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| renovate.json | ||
| tsconfig.json | ||
| vitest.config.ts | ||
doppler
A 2-dimensional multiplayer game utilising ray tracing.
Available at doppler.schmelczer.dev.
For optimised 2D ray tracing, SDF-2D is used.
Development
Run npm install && npm run init once, then npm run dev. Run npm test for
regressions, npm run lint:check for formatting and lint, and npm run build for
all production bundles. Tests rebuild the shared library before running.
The website's server list is hardcoded in
frontend/src/scripts/configuration.ts —
edit it to add or remove game-server origins.
Run the server image locally:
docker build -t doppler-server .
docker run -p 3000:3000 doppler-server --name "My server" --playerLimit 16

