tiecook

Your recipes, as plain text files

A small, self-contained recipe manager. Import your recipes, browse and edit them in a terminal, and export a website you can put online, with no HTML or database to learn.

How it works

Bring them in. Keep them. Put them online.

Your library is a folder of plain-text files, one per recipe, so it is easy to back up, search, edit with any editor and keep for good. There is no database to break.

1
Import

Read Meal-Master .mmf files, even hand-typed ones, or pull everything from a Tandoor Recipes server, photos included.

2
Browse and edit

Search as you type, read a recipe, and change it in a form with fields for the title, ingredients and steps. The mouse works too.

3
Export

One command writes a complete static website with live search, a page for each recipe and a print button.

Browse

A recipe book in your terminal.

Run tiecook with no arguments to open it. It is a terminal program, with a keyboard and mouse interface that works on Linux and Windows.

tiecook: the recipe list
 tiecook  -  My Recipes                                                         
Search: _                                                                       
--------------------------------------------------------------------------------
> Banana Bread  [Baking, Favorite]                                              
  Chili  [Main dish]                                                            
  Pancakes  [Breakfast]                                                         
  Tomato Soup  [Soup, Favorite]                                                 
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
 4/4  Enter open  F4 edit  F5 import  F8 del  type=search  F10 quit             

The list. Type to search; the bar at the bottom shows the keys.

tiecook: a recipe
 Banana Bread                                                                   
 Serves 1 loaf - Baking, Favorite                                               
                                                                                
 Ingredients                                                                    
   3 Ripe bananas                                                               
   1/3 cup Melted butter                                                        
   3/4 cup Sugar                                                                
   1 Egg                                                                        
   1 tsp Vanilla                                                                
   1 tsp Baking soda                                                            
   1 1/2 cup Flour                                                              
                                                                                
 Steps                                                                          
 1. Mash the bananas and stir in the butter, sugar, egg and vanilla.            
 2. Mix in the baking soda and flour.                                           
 3. Bake at 350 F for 60 minutes.                                               
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
 scroll  e edit  d delete  p photo  q back  F10 quit                            

A recipe, open to read. Press e to edit it.

The list

  • Type to search titles, keywords and text. Every word has to match
  • Enter opens a recipe, F4 edits it, F8 deletes it, with a confirmation
  • F7 adds a new recipe, starting from a title
  • F5 imports Meal-Master files from a file or folder you name
  • The labels on the bottom bar are clickable

A recipe

  • o opens the source web page, i opens the photo, in your usual apps
  • p sets or replaces the photo, from a .jpg, .png or .webp
  • e edits, d deletes, and q goes back

The editor

A form with fields and lists. Add, delete and reorder ingredients and steps, and save with F2. A long step opens in your own editor, and every line you type becomes its own numbered step.

Photos

Give a recipe a photo by putting recipe-name.jpg beside it, or attach one in the editor. It is copied into your library.

Website

A recipe site you can put online.

Export writes the whole site: an index with a live search box, your favourites highlighted, alphabetical groups, one page per recipe, a shared style sheet and your photos.

The exported site's main page: a title, an intro line, a search box, and the recipes grouped under M-R and S-Z, with the favourite recipe highlighted in yellow.
A recipe page: the title, servings, keywords, a bulleted ingredients list, numbered steps and a green Print this recipe button.

The sample site, as exported. Both pages are plain HTML, so any web server will do.

Safe to re-run

  • It only writes into a folder it created, marked with a .tiecook-site file, and refuses to touch anything else
  • Each run removes the pages and images of recipes you have deleted or renamed
  • Set the title, intro, footer, a banner image, a page background, and which keyword marks your favourites, in the config file

Your words stay yours

Recipe files and exported pages keep full UTF-8. Only the terminal display is simplified to plain ASCII, because the console shows one byte per cell.

Commands

Everything also works from the command line.

usage
tiecook                                   browse, edit and delete recipes
tiecook list [--library DIR]              list every recipe
tiecook search [--library DIR] words      search titles, keywords and text
tiecook import mealmaster [--library DIR] file|dir...
tiecook import tandoor [--library DIR] [--url URL] [--token TOKEN] [--limit N]
tiecook export html [--library DIR] output-dir

Importing again updates a recipe in place instead of making a duplicate. --library picks a different library for one run.

Get tiecook

Free, for Linux and Windows.

Version 1.0.5, under the MIT licence. Written in Free Pascal, one source for both systems. It is a terminal program, so run it from a terminal.

Linux

One AppImage (4 MB), with OpenSSL bundled so the Tandoor import works. Make it executable, then run it from a terminal.

Download for Linux

Windows

An installer (1.8 MB) that includes the OpenSSL files. Open tiecook from a Command Prompt or Windows Terminal once it is installed.

Download for Windows

From source

Build it with Free Pascal 3.2.2 and make. The code, the notes and every release are on GitHub.

See it on GitHub

The downloads come from GitHub, where the latest release is always listed.