43 lines
1.5 KiB
Markdown
43 lines
1.5 KiB
Markdown
|
|
# Retur
|
|||
|
|
|
|||
|
|
**Avdelningen för obeställbara försändelser.**
|
|||
|
|
|
|||
|
|
A short bureaucratic supernatural sorting game. You have five shifts at a municipal dead-letter office. Read each letter, consult an expanding and occasionally contradictory rulebook, then route it to delivery, sender, Archive 9, or quarantine.
|
|||
|
|
|
|||
|
|
Later regulations override earlier ones. The letters know this too.
|
|||
|
|
|
|||
|
|
## Stack
|
|||
|
|
|
|||
|
|
Vanilla TypeScript + Vite. No framework, backend, or runtime dependencies. State is kept in `localStorage`.
|
|||
|
|
|
|||
|
|
The visual language deliberately follows `djupet`: JetBrains Mono, near-black blue panels, restrained eldritch color, compact administrative labels, and pressure expressed through a screen-edge vignette. Retur replaces Djupet's Malmö map and idle resources with a paper desk, physical stamps, and a regulation sidebar.
|
|||
|
|
|
|||
|
|
## Development
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
npm install
|
|||
|
|
npm run dev # http://localhost:5691
|
|||
|
|
npm run typecheck
|
|||
|
|
npm test
|
|||
|
|
npm run build
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## Rules
|
|||
|
|
|
|||
|
|
- Inspect the sender, recipient, address, postmark, letter text, and marks.
|
|||
|
|
- Select one of four routes and stamp the decision.
|
|||
|
|
- New regulations arrive each morning. Later and more specific rules take precedence.
|
|||
|
|
- Incorrect sorting costs composure and raises suspicion.
|
|||
|
|
- A completed day restores one composure; suspicion persists.
|
|||
|
|
- Survive all five days to receive a permanent position. This is not necessarily a reward.
|
|||
|
|
|
|||
|
|
Keyboard: `1`–`4` selects a route, `Enter` stamps or continues, `?` opens help.
|
|||
|
|
|
|||
|
|
## Deployment
|
|||
|
|
|
|||
|
|
The production image is a static Vite build served by nginx.
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
docker compose up -d --build
|
|||
|
|
```
|