Skip to content

Instantly share code, notes, and snippets.

@LukeChannings
Created May 7, 2021 14:28
Show Gist options
  • Save LukeChannings/11ba3649bcb9b9086e3e271c7c3e950d to your computer and use it in GitHub Desktop.
Save LukeChannings/11ba3649bcb9b9086e3e271c7c3e950d to your computer and use it in GitHub Desktop.
Crouton.app (https://crouton.app) .crumb schema
// a .crumb file is a UTF-8 JSON document with the following schema:
interface CroutonRecipe {
name: string;
uuid: string;
serves: number;
// Preparation time in minutes
duration: number;
// Cooking time in minutes
cookingDuration: number;
// e.g. https://example.com
webLink: string;
// The hostname of the computer that the recipe was exported from
senderName: string;
ingredients: Array<{
quantity: {
quantityType:
| "ITEM"
| "TABLESPOON"
| "TEASPOON"
| "CUP"
| "MILLS"
| "GRAMS"
| "KGS"
| "POUND"
| "OUNCE"
| "LITRES"
| "DECILITER"
| "BOTTLE"
| "PINCH"
| "CAN"
| "BUNCH"
| "PACKET"
| "SECTION";
};
ingredient: {
name: string;
uuid: string;
};
order: number;
uuid: string;
}>;
steps: Array<{
step: string;
order: number;
uuid: string;
}>;
notes: string;
folderIDs: unknown[];
// base64-encoded PNG data
images: string[];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment