Roadmap
High-level view of what's planned, in progress, and shipped.
Planned
PDF & public share: recipes for friends & family
Let users share their recipes outside the app by either exporting them as a clean, printable PDF or generating a public web page. Shared links make it easy for friends and family to view the recipe without an account, while PDFs are perfect for printing, saving, or sending over chat and email.
Meal Planner: weekly schedule + shopping list
Create a Meal Planner that lets users allocate their meals across the week so they can see their upcoming breakfasts, lunches, and dinners at a glance. This is useful for families, busy people, and anyone doing serious meal prep. Over time, connect the planner to the shopping list system so users can not only plan their week but also generate a consolidated shopping list for all planned meals in a single step.
Ingredient Explorer: nutrition insights & dietary impact
Build an Ingredient Explorer where users can inspect individual ingredients and see key nutritional information (macros, calories, and other relevant values). Show how each ingredient can benefit or impact their diet, helping users make more informed choices when cooking, planning meals, or tweaking recipes to better match their health goals.
In progress
Email Delivery: verification + password recovery
Implement a dedicated email delivery service so new users can reliably confirm their email address and securely recover access if they forget their password. This includes a branded sender domain, trustworthy deliverability (SPF/DKIM/DMARC), clean verification + reset templates, and a resilient backend flow (token TTLs, resend cooldowns, link safety, and clear error states). The goal is “it just works” email—fast, consistent, and secure—so onboarding is smooth and account recovery is stress-free as Zavora scales.
Shipped
Contact Center: premium messaging system
Build a top-of-the-line contact and messaging system so people can easily get in touch with us from anywhere in Zavora. This will include a clean contact entry point, guided message categories (so users reach the right place faster), and a reliable backend workflow to track conversations from first message to resolution. The goal is a frictionless support experience for users and a scalable system for our team as the product grows.
Public Website: responsive marketing refresh
Optimize Zavora’s public website so it feels premium, fast, and mobile-first. This work focuses on tightening the layout and hierarchy across all public pages, improving responsiveness on phones/tablets, and polishing key sections (hero, features, pricing, FAQ, footer) so new visitors can quickly understand what Zavora does and feel confident signing up. The goal is a clearer story, smoother navigation, and a “super cool” first impression that converts.
Help Center: public landing + navigation
Create a public /help hub that acts as “support home”, with a short intro, prominent search, and quick links into Guides and FAQ by topic (Getting started, Recipes, Ingredients/Nutrition, Membership, Account, Troubleshooting). Add a simple how-to guides library and a grouped FAQ for fast answers, plus an auth-gated Contact Support form with basic triage links (top issues like password reset, billing, recipe visibility, PDF export) so most users can self-serve before submitting a request.
Public username: identity for sharing & Discover
Add a public username field for every user, created during sign-up and editable in Account Settings. This username will serve as the user’s public identity across Zavora, especially when sharing recipes and appearing in the future Discover feature, so other users can see who created each recipe in a consistent, friendly way.
Discover: public recipe sharing & browsing
Allow users to set each recipe as either private or public. Public recipes become visible to everyone through a new Discover experience, where users can browse and search recipes shared by others. From Discover, users can open, review, and save public recipes into their own recipe list, turning Zavora into a shared cooking space while still giving full control over which recipes remain private.
Shopping list: structured ingredients & generator
Backfill and improve the ingredient parser to move from free-text to structured ingredients. Use this to power a shopping list generator that aggregates ingredients across multiple selected recipes, hides optional items by default, and produces a clean, merged list with sensible units. Add an option to export/print the list (PDF in a later iteration). When a user selects several recipes, they should get a single, tidy shopping list they can actually take to the store.
Release notes: public /releases timeline
Create a public /releases page with a reverse-chronological list of versions and changes. Each entry should include a date, title, concise bullet points, and optional links (for example, to a specific recipe, feature page, or support article). This becomes the central “what changed” history for Zavora.
Public roadmap: /roadmap (Kanban view)
Add a public /roadmap page with a simple Kanban-style layout using three columns: Planned, In Progress, and Shipped. Cards represent features or improvements, with short titles and descriptions. Start as a read-only public view, with the long-term goal of adding an internal admin editor to maintain it without code changes.
Notification Center: user inbox
Build a user-facing Notification Center at /notifications with tabs for All, Unread, Announcements, Maintenance, and New Features. Add a notification badge in the header/menu and a toast for new unread items. Support read/unread toggles, “Mark all as read”, and critical banners that appear at the top of the app with dismiss state. Implement notification types (maintenance, feature, announcement, system) and scheduling so messages become visible at publish_at and banners can expire at expires_at while remaining in the inbox history.
Notification Center: admin console & scheduling
Create a protected admin console at /admin/notifications (role-based access) to create, edit, and schedule notifications. Each notification includes title, body (Markdown), type, severity (info/warn/critical), publish_at, expires_at, and audience selection (v1: all users). Provide previews as both banner and inbox item, and keep simple action logs (who created/edited and when). When admins schedule a message, it should appear to users at publish_at, and editing a live message should update what users see on the next fetch/poll.
Auth foundation: user settings, sign-up & recipe ownership
Build the core authentication and account foundation. Add a User Settings page to let users edit name, email, and password, with a shared toast component for clear feedback on each update. Implement sign-up with email verification (token-based flow + robust error handling) to ensure trusted accounts. Link recipes to their owners via a recipes.user_id foreign key, update all queries to be user-scoped, and backfill existing data so every recipe is correctly attached to a user.
UI: Recipe viewer, editor & creator improvements
Polish the full recipe flow UI. In the viewer, add a “last update” field backed by a DB timestamp, types, fetch logic, and a save-hooked update function. In the creator, include equipment, allergens, dietary flags, servings, prep time, calories, and estimated cost fields. In the editor, add a difficulty selector. Refine paddings and layout for both mobile and desktop for a cleaner reading and editing experience.
UI: Recipes table enhancements (sorting, pagination, filters)
Enhance the recipes table with sorting by name, created_at, and type, plus proper pagination with URL-based state (query params). Add a mobile-friendly filter drawer so users can combine filters and sort options. Ensure table state stays in sync with the URL and persists when navigating or reloading.
Navigation: desktop sidenav + floating user menu
Design and implement the core navigation system: a persistent desktop sidebar for main app sections and a floating user menu that surfaces profile, account, and sign-out options. This prototype establishes the layout, interactions, and responsive behavior that future navigation features will build on.
Dashboard: KPIs, latest recipes & pie chart
Create the first version of the dashboard with key metrics (KPIs), a “latest recipes” list, and one working pie chart plus one placeholder for future charts. This gives users a quick overview of their activity and lays the groundwork for a more data-driven home experience inside Zavora.
Recipes: CRUD, Search & Rich Metadata
Implement full recipe management: create, read, update, and delete recipes with search support. Each recipe stores rich fields (ingredients, step-by-step instructions, utensils/equipment, allergy info, dietary flags, calories, estimated price, portions/servings, and meal type) so users can better organize, filter, and understand what they cook.