FujiRecipeVault is a small app I built to keep my Fujifilm film-simulation recipes in one tidy place. It began as a tool for my own X-T3, but it works just as happily with the newer bodies — the X-T4, X-T5, X-Pro3, X100V and the rest of the family — because every film simulation, every parameter and every allowed value can be adjusted to match the camera you actually shoot with.
If you build your own recipes, you already know the usual ways of keeping track of them, and neither is much fun: a growing pile of screenshots that never quite look the same twice, or a slick app that asks for money and hides everything behind an account. FujiRecipeVault is meant to be the calmer option in between — a clean, consistent home for your recipes that runs entirely on your own computer, with no account, no subscription and no cloud. Your data lives in plain files right next to the app, and the whole interface is in English.
An independent project — not affiliated with Fujifilm. FujiRecipeVault is an unofficial hobby project. It is not affiliated with, authorized, sponsored or endorsed by FUJIFILM Corporation. "Fujifilm", "Fujinon" and the camera model names (X-T3, X-T4, and so on) are trademarks of their respective owners and appear here only to describe compatibility (nominative use). The logo shows Mount Fuji, the mountain — it is not, and does not reproduce, any Fujifilm brand mark.
How it was made. This application was "vibe-coded" — built conversationally with Claude Code using the Opus 4.8 model — as a personal hobby project. It works well and keeps your data entirely on your own machine, but it is offered as-is, with no warranty (see the license).
FujiRecipeVault is a searchable library of your recipes with a full editor for every setting a Fujifilm recipe can hold — film simulation, dynamic range, tone, color, sharpness, grain, the Color Chrome effects, white balance with its red/blue shift, ISO and more. A small ? by each field explains what it does and whether your camera supports it.
- Camera slots (C1–C7) mirror your custom banks — drag a recipe onto a slot to record where it lives.
- Several cameras side by side, each with its own recipes, film simulations, parameters and slots. A built-in camera manager grows the app from an X-T3 tool into something that fits any Fujifilm body.
- Print a clean recipe card (light or dark, with a photo) or a one-page camera cheat sheet of all your slots — to paper or PDF.
- Read settings from a photo — add a JPEG straight from the camera and the empty fields fill in from its embedded Fujifilm settings.
- Share recipes — export a selection to a single file for a friend to import (with or without the sample photos), or build a recipe from a screenshot with the help of an AI assistant.
- Original vs. changes — the app remembers the original when you edit, so you can compare, reset to it, or set a new baseline.
- Sample photos per recipe, a short code for the white-balance shift, plus search, filters, sorting and favorites.
- Safe by default — deleting a recipe offers an instant Undo, and ⤓ Backup & restore (top bar) saves or reloads your whole library as a single file.
Everything runs locally, with one-click example recipes to get you started and a quiet background start you end with the ⏻ Quit button.
2026-08-31 — A bigger toolbox. A round of everyday improvements: star ratings and tags, one-click Duplicate, a Select mode for bulk export / tag / reassign / delete, gentle −/+ steppers on the numeric fields, a compatibility ⚠ hint when a recipe uses something the assigned camera lacks, a printable recipe card and camera cheat sheet, reading a recipe from a photo's embedded settings, an instant Undo for deletes, and a ⤓ Backup & restore button (top bar) for the whole library. It is all covered in the user guide.
2026-08-25 — Share recipes (export & import). Export a chosen set of recipes to a single file for another FujiRecipeVault user to import — everything travels except the camera slot, and the sample photos are optional. Import can also read a recipe straight from a screenshot via a ready-made AI prompt. Full steps in the user guide.
All you need is Python 3, which already comes with macOS and most Linux systems. On Windows you can install it from python.org — just remember to tick "Add Python to PATH" during setup. There are no other dependencies at all, because the app uses only Python's standard library.
Download the project with the green Code button (choose Download ZIP and unzip it) or clone the repository, then put the folder wherever you like. How you start it depends on your system — expand yours:
macOS
Double-click FujiRecipeVault starten.command. The server starts in the background, your browser
opens, and the terminal window closes itself. The very first time, macOS may refuse to open a file
downloaded from the internet; if so, right-click the launcher, choose Open, and confirm with
Open once. You will not be asked again.
Windows
Double-click FujiRecipeVault starten (Windows).vbs, which starts everything without a console
window. If nothing seems to happen, Python is most likely missing: install it from
python.org with "Add Python to PATH" ticked, or run
python app.py in a terminal opened in the folder.
Linux
Make the launcher executable once with chmod +x "FujiRecipeVault starten (Linux).sh" and run it, or
start the app from a terminal with python3 app.py.
On any system, you can also start it by hand:
cd path/to/this/folder
python3 app.pyThen open http://127.0.0.1:8765. You stop the app with the ⏻ Quit button in the top right, or
by pressing Ctrl + C in the terminal if one is open.
If port 8765 is already taken (or you just prefer another one), set it before starting — the app
stays local either way:
APP_PORT=8888 python3 app.pyAPP_HOST can likewise override the bind address, but the default 127.0.0.1 is what keeps the app
private to your computer — only change it if you know you need to.
The launcher can live anywhere, but it is convenient to start the app straight from your desktop with a proper icon. Expand your system:
macOS (with Automator)
macOS does not follow shortcuts to a .command file very gracefully, so the tidiest approach is a
tiny Automator application that simply runs the launcher.
- Open Automator (in your Applications folder) and create a new document of the type Application.
- Search for Run Shell Script and drag it into the workflow area on the right.
- Replace the sample text with a single line that opens the launcher, using the real path to your
folder — for example:
open "/Users/you/path/to/FujiRecipeVault/FujiRecipeVault starten.command" - Choose File → Save, name it FujiRecipeVault, and save it onto your Desktop.
- To give it the real icon, open
ICON.pngin Preview and copy it (Edit → Select All, then Edit → Copy). Select your new desktop app, press ⌘ I for Get Info, click the small icon in the top-left corner of that window, and paste with ⌘ V.
From then on, double-clicking the desktop icon starts FujiRecipeVault like any other app.
Windows
Right-click FujiRecipeVault starten (Windows).vbs and choose Send to → Desktop (create
shortcut). A shortcut appears on your desktop, which you can rename to FujiRecipeVault. If you
would also like the mountain icon on it, you need an .ico version of the image: right-click the
shortcut, open Properties, click Change Icon, and point it at that .ico file.
Linux
Most desktops let you place a small .desktop file on the desktop. Create a file called
FujiRecipeVault.desktop on your Desktop with the following content, adjusting both paths to your own
folder:
[Desktop Entry]
Type=Application
Name=FujiRecipeVault
Exec=bash "/home/you/path/to/FujiRecipeVault/FujiRecipeVault starten (Linux).sh"
Icon=/home/you/path/to/FujiRecipeVault/ICON.png
Terminal=falseThen mark it as executable (chmod +x ~/Desktop/FujiRecipeVault.desktop); some file managers instead
ask you to right-click and choose "Allow launching" the first time.
- Choose your camera in the selector at the top left, or add one through the ⚙ gear button.
- On a fresh install the library is empty — click Load example recipes to see a few in action, or press + New recipe to start your own.
- Fill in the settings and click Save.
- Back on the main view (no recipe selected), the camera slots appear on the right; drag a recipe from the list onto a slot to record where it lives on the camera.
- Click a recipe to open it for editing, and click it again to close it.
- To pass recipes to another FujiRecipeVault user, use Export and Import on the left, just below the recipe count.
The complete, step-by-step walkthrough lives in docs/USER_GUIDE.md.
The app keeps everything in plain files inside its own folder:
| File | Contents |
|---|---|
recipes.csv |
All your recipes — you can open it in Numbers or Excel at any time. |
cameras.json |
Your cameras, their capabilities and slot assignments. |
images/ |
Your example photos. |
These files are yours and never leave your machine. They are deliberately excluded from the Git
repository (see .gitignore), so a fresh clone of this project starts empty, with an empty library
and a single default camera. Nothing you enter is ever uploaded anywhere.
The easiest way to keep a copy is the ⤓ Backup & restore button in the top bar: it saves your whole library — recipes, cameras and photos — into a single file you can stash anywhere, and loads it back when you need it (a safety copy is made before any restore). Deleting a recipe is recoverable too, via the Undo that pops up right after.
You can also just copy the files by hand:
cp recipes.csv cameras.json /path/to/backup/
cp -R images /path/to/backup/Keeping a copy of the whole app folder in your own private backup or file sync works just as well.
Nothing happens when I double-click the launcher.
Python is probably not installed (most common on Windows). Install it from
python.org, tick "Add Python to PATH" on Windows, and try
again — or run python app.py (Windows) or python3 app.py (macOS/Linux) from a terminal opened in
the folder.
macOS says the file "cannot be opened".
That is the standard Gatekeeper prompt for downloaded files. Right-click the launcher, choose Open, and confirm with Open — only needed once.
The browser does not open by itself.
Open it manually and go to http://127.0.0.1:8765.
It says the address is already in use.
FujiRecipeVault is probably already running, so just open http://127.0.0.1:8765. To force a stuck
instance to stop on macOS or Linux, run lsof -ti tcp:8765 | xargs kill -9.
A setting isn't shown for my camera.
The editor only shows the parameters your selected camera supports. You can add or change them under ⚙ gear → camera → parameters.
Can the app write recipes onto the camera?
No, this doesn't work.
The model tables aren't perfect.
They are best-effort defaults. You can edit any camera's film simulations, parameters and allowed values in the gear dialog to match your body exactly.
Where do the example recipes come from?
They are generic, illustrative starter recipes bundled with the app (in the examples/ folder).
Treat them as a starting point: tweak them, or delete them and add your own.
This is a personal hobby project, and feedback is very welcome. If you run into a bug or have an idea that would make FujiRecipeVault better, please open an issue — I'd love to hear what would make it more useful for your own recipe collection.
FujiRecipeVault is released under the MIT License — see LICENSE. You may use, modify and share it freely, and it comes with no warranty.


