Phraser is a daily English word puzzle I built end to end as a full-stack application. Each day you work out a hidden phrase from a limited pool of its letters, using as few guesses as you can.
How It Works
You're given a pool of letters derived from a hidden phrase. Guess valid words using those letters, and any matching letters light up in the target. The challenge is figuring out the phrase with as few guesses as possible.
Features
- Daily Puzzles: A new phrase to solve every day
- Letter Pool: Limited letters force strategic word choices
- Score Tracking: Compete against yourself with guess counts and streaks
- Category Hints: Know the theme to guide your guesses
- Progress Persistence: Stats and streaks saved locally
Technical Implementation
- Full-Stack Architecture: Next.js App Router with server and client components
- Type Safety End-to-End: tRPC API routers and the Prisma ORM share types across backend and frontend
- Database: PostgreSQL hosted on Neon with Prisma schema
- Styling: Tailwind CSS for responsive, utility-first design
- Deployment: Hosted and deployed through Vercel
