A little while ago, I blogged about an application I was writing for my cooking recipes.
I have now gotten to a point where I will declare it version 0.1. The release can be found on a KDE Download server near you: https://download.kde.org/unstable/kookbook/kookbook-0.1.0.tar.xz.mirrorlist.
As written back then, Kookbook is basically displaying markdown, parses semi-structured markdown for ingredients and tags and allows accessing the recipes that way. Kookbook also offers to open a system editor for editing the content.
This is the “normal” view:
Support for images in recipes has also been added since previous blog post.
Since the may blog post, I have also written a little more basic touch-friendly user interface. It does not offer the full set of desktop features, namely it doesn’t offer to launch an editor for you, and it also only allows to access the recipes thru their names, not thru all the other ways of finding recipes. Though the last part is up to discussion for further releases.
The main page looks like
And lets you search thru the titles to find the one you are after.
The recipe view is more or less the same.
The code itself is mit/x11 licensed, and contains a couple of interesting bits that others might want to take advantage of:
- Kirigami file dialog. Could be polished and upstreamed.
- Qt Markdown capability (with libdiscount). Could be librarifyied
Go forth, do cooking. And feel free to share recipes. Or create patches.
This looks nice!
If you’d extract strings for l10n I would translate Kookbook, at least to German.
I still need to find out how to do translations in a sane way. Especially how to deal with the “magic tags” in recipes that gets parsed, but also rendered.
Is there something from KRecipes you can reuse?
I didn’t look closely at the sources. I only gave up on it as a user.
Nice program! I like the user-interface of the desktop version, it looks clean and practical. Will definitely use this!
Does the mobile version use the same code base as the desktop one? If so, cool, because I have sort of been worried that apps made for mobile using Kirigami won’t have full proper classic interfaces when viewed on desktop. :)
The desktop and mobile version share all the backend code, but the UI code is different.
If you browse the sources at https://cgit.kde.org/kookbook.git/tree/src – there is a core, a touch and a desktop folder. Core contains recipe indexing and parsing and the markdown handling.
I tried it out on Debian, after installing from git. What I did is start up the program, created a new recipe, all was fine.
But when starting the program the second time, the whole GUI was gone. Only a text box containing a template, but no side bar, no menu (!!), nothing.
This is on Debian/unstable, running Cinnamon desktop.
Hmm.. If you try comment the restoreState call on line 202 in mainwindow.cpp, you should get a default state.
If you right click on the toolbar or one of the dock widget headers, you can hide all of them, I found out. but I need to create a way to re-enable some again.
I just added a change in git that always preserves the toolbar (and you can right click the toolbar to get some of the other pane views available)