Griddle is a web-based puzzle platform where users can solve Sudoku puzzles, track their progress with detailed statistics, and earn achievements. The system follows an orchestration-driven service-oriented architecture (SOA), implemented with various backend services and a responsive frontend.
For a detailed architectural overview and service flow, see the project documentation.
- Solve Sudoku puzzles of various difficulties
- View user statistics and puzzle streaks
- Earn XP and achievements
- Mobile-friendly and responsive UI
- Go (Golang)
- PostgreSQL (production) / SQLite (development)
- JSON Web Token (JWT)
- Docker
- Go 1.20+
- Node.js 20+
- npm 11+
- Docker 25+
- Clone the repository:
git clone https://github.com/MPucknat/Griddle.git
cd Griddle- Build & Run the application with Docker
docker compose upOnce running, access the application at http://localhost:8080.
ℹ️ The root docker-compose.yml starts both frontend and backend. To work on them individually, use the docker-compose.yml inside frontend/ or backend/.
⏳ On the initial run, the application may take some extra time to start as it imports the default set of Sudoku puzzles into the database!

