Sometimes you don't need a particularly grand reason to start a new project.
Yesterday, I decided I wanted to play a Sudoku game.
So, naturally, I made one for Odoo.
Baker's Sudoku is a small Odoo 19 module that adds a fully playable, bakery-themed Sudoku game to an Odoo website. It started as a fairly simple idea and turned into a nice little exercise in puzzle generation, JavaScript and Odoo's website framework.
Sudoku, but make it Toasty
The module is designed to run entirely on the website, with the actual game state being handled in the browser.
There is no need to create a database record every time someone starts a puzzle, which keeps the implementation nice and lightweight. The puzzle itself is generated using Python, including checking that generated boards have a unique solution.
There are currently four difficulty levels:
- Easy
- Medium
- Hard
- Extreme
So whether you're after a quick little puzzle with your morning toast or something considerably more challenging, there's a setting for it.
A few helpful tools
Of course, sometimes the Sudoku just refuses to make sense.
The game includes a few tools to help with that:
- Three hints per puzzle
- Skip board when you've had enough
- Auto-solve confirmation if you really want to give up
The aim isn't to make the puzzle trivial, though. The helpers are there for those moments where you've stared at the same few squares for far too long.
A little bit of Odoo development
The project was also a useful opportunity to play around with some of Odoo's website development patterns.
The frontend is built using OWL, while the puzzle generation and validation logic is handled in Python.
Keeping the game state client-side also means there's effectively zero database overhead for someone simply playing a game. Start a puzzle, solve it, get stuck, start another one. None of that needs to create a trail of records in the Odoo database.
It's a surprisingly nice fit for an Odoo website module.
It's free!
This one is also a little different from some of my other Odoo modules.
Baker's Sudoku is available for free through the Odoo Apps Store.
It was a small personal project, so rather than turning it into another paid module, I thought it would be more useful to simply put it out there.
If you run Odoo 19 and fancy adding a little Sudoku game to your website, you can grab it from the store.
Get Baker's Sudoku on the Odoo Apps Store
And, as usual, the source is completely available on GitHub if you'd rather poke around in the code, steal some ideas, or just see how the whole thing works.
View the Baker's Sudoku source on GitHub
What's next?
For now, this is deliberately a small project.
There are always things that could be added. Better puzzle generation, more game features, statistics, perhaps even some more interesting ways of helping players solve particularly stubborn boards.
But that's part of the fun of these little projects.
Not everything needs to become a huge application. Sometimes it's nice to spend an afternoon making a tiny game, get it working, give it a bit of toast-themed styling, and put it out into the world.