emirsmith01 wrote a reply+100 XP
1h ago
Interesting project. I would definitely pre-generate daily puzzles and cache them rather than generating them on every request. It makes debugging easier and ensures all users receive the same challenge.
For rule validation, I'd keep the puzzle logic inside dedicated service classes and use custom validation rules only for request-level checks. That approach has worked well for me on browser-based word puzzle projects.
I've been experimenting with similar word game mechanics on my own project, Blossom Word Game blossomwordgame.uk, and separating puzzle generation from validation logic made future updates much easier. For leaderboards, Laravel Echo/WebSockets would be a good option if you expect a large number of active players.
Looking forward to seeing how the project evolves.