Skip to content

[Feature] Add meal-plan shortcode to render weekly meal plans from YAML #11

@sedward5

Description

@sedward5

Feature Summary

Create a Hugo shortcode called meal-plan that reads structured weekly meal plan data from data/weeks/*.yaml and renders it into a readable table or list grouped by day.

What problem does this feature solve?

Enables dynamic rendering of weekly meal plans based on external data files. This keeps markdown content files clean and lets users focus on data rather than layout. It also helps future-proof the site for data-driven templates.

Proposed Solution

Acceptance Criteria
• Shortcode is available as {{< meal-plan week="weeks/week_of_YYYY_MM_DD.yaml" >}}
• Shortcode renders a styled section for each day of the week
• Each day includes:
• A title (required)
• One or more of:
• recipe_url (rendered with source attribution)
• recipe_path (internal link)
• ingredient_name (listed plainly)
• Gracefully handle days with only a title and no recipes or ingredients
• Optional: display recipe data (from data/imported/) if available for recipe_url or recipe_path

Nice-to-Have Enhancements
• Detect and linkify internal recipes
• Allow custom display templates or theming per site
• Include total weekly ingredient list via another shortcode or partial

Scope

  • Hugo content structure
  • Recipe import system
  • GitHub Actions automation
  • Shortcodes or UI templates
  • Data structure or storage

Additional Notes

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions