pangrum
A daily word puzzle game.
✨ Features#
- 🇺🇸🇬🇧🇩🇪🇳🇱🇫🇷🇪🇸 Play in multiple languages
- 🔄 Cross-device progress sync (no login required)
- 🏆 Social sharing of your results
- 📲 Use offline (+ install as a PWA)
- 🟢 Streak tracking
- 🌒 Light and dark mode
📲 Install as an App#
Pangrum works offline and can be installed as a PWA (Progressive Web App) on your device.
iOS (Safari)#
- Open pangrum.com in Safari
- Tap the Share button (square with arrow)
- Scroll down and tap Add to Home Screen
- Tap Add to confirm
Android (Chrome)#
- Open pangrum.com in Chrome
- Tap the three-dot menu (⋮)
- Tap Add to Home Screen or Install app
- Tap Install to confirm
🔒 Privacy#
- No account - Progress lives in your browser.
- No cookies - We don't use any.
- Privacy-first analytics - We use Vercel Analytics to see aggregate stats (like "how many puzzles were completed"). It's anonymous, cookieless, and collects no personal data.
- Sync is optional - If you enable it, only your word lists are shared (anonymously, via a code you control).
🛠️ Tech Stack#
- Nuxt - of course!
- Nitro - server engine
- PartyKit - real-time cross-device sync
- Hunspell - word lists
@vite-pwa/nuxt- PWA support@nuxtjs/color-mode- theme switching@nuxtjs/i18n- UI internationalisation (EN, DE, ES, FR, NL)- Upstash - KV storage for persistent data
- Vercel - hosting
🚧 Roadmap#
- keyboard shortcuts on desktop
- mobile app (using Capacitor)
... or maybe you have another idea?
🧑💻 Try it out locally#
Setup#
# install dependencies
corepack enable
pnpm install
# serve in dev mode, with hot reload at localhost:3000
pnpm dev
# build for production
pnpm build
# preview in production mode
pnpm preview
Testing#
# run all tests
pnpm test
# run tests in watch mode
pnpm test:watch
# run e2e tests
pnpm test:e2e
License#
Made with ❤️
Published under MIT License.