mirror of
https://github.com/runyanjake/cooking.git
synced 2026-03-26 09:53:17 -07:00
2.2 KiB
2.2 KiB
Recipe MDX Format
Frontmatter Fields
---
title: "Recipe Title"
slug: "recipe-slug"
date: "YYYY-MM-DD"
lastUpdated: "YYYY-MM-DD"
category: "mains" # free-form string (e.g. "mains", "soups", "desserts")
tags: ["tag1", "tag2"] # free-form strings (e.g. ["italian", "chicken"])
cookTime: 45 # minutes
prepTime: 20 # minutes
servings: 4
author: "PWS" # ID from public/authors.json
description: "Short description for SEO and previews"
featured: false
display: true # set to false to hide without deleting
displayPhoto: "./assets/hero.jpg"
---
Content Structure
Content after frontmatter is compiled as MDX using next-mdx-remote/rsc. The <RecipeCard> JSX component wraps recipe sections and renders them as tabs in the UI.
- Markdown before
<RecipeCard>renders as intro prose above the recipe card - Markdown after
</RecipeCard>renders as outro prose below the recipe card - Important: a blank line after
<RecipeCard>is required for MDX to parse the content inside as markdown
<RecipeCard> Sections
## (H2) headings inside <RecipeCard> define tabs:
## Photos— images with italic captions (*caption text*)## Ingredients— bullet lists, optionally grouped with h3 subheadings## Instructions— numbered steps, optionally grouped with h3 subheadings## Notes— tips, variations, storage (optional)## References— credits and sources (optional)
Example
---
title: "Lentils"
description: "A neutral lentil dish."
...
---
This recipe uses brown lentils (whole Masoor Dal)...
<RecipeCard>
## Photos

*Finished lentils*
## Ingredients
- 1 cup brown lentils
...
## Instructions
1. Rinse lentils...
...
## Notes
### Tips
- Try with different lentils!
## References
- Reference Recipe **[HERE](https://example.com)**
</RecipeCard>
Image Paths
Images use relative paths: ./assets/image.jpg
These are rewritten at render time to /recipes/[category]/[slug]/assets/image.jpg.
Italic Captions in Photos Section
Italic text (*caption*) in the ## Photos section renders as a styled block caption beneath images. In all other sections, italic renders normally.