Skip to content

Latest commit

 

History

History
94 lines (79 loc) · 4.67 KB

File metadata and controls

94 lines (79 loc) · 4.67 KB

Digimenu: Simplified 1-Month Solo-Dev Plan

Strategy: The "Hyper-Lean" MVP

To ship in 1 month as a solo side project, we will focus on the Public Menu + Simple Order Notification flow. In Phase 1, orders are logged in the staff dashboard and trigger an email or SMS notification. We strip away anything that isn't required for a restaurant to start "looking professional" today. Online payments (GCash, etc.) are deferred to Phase 2.


🎨 Branding (Colors & Fonts)

A warm, appetite-stimulating palette and friendly typography designed for Filipino food businesses:

  • Primary Accent: #FF6D1F (Vibrant Orange)
  • Base Background: #FAF3E1 (Warm Cream)
  • Secondary Background/Borders: #F5E7C6 (Soft Sand)
  • Text & Dark Elements: #222222 (Charcoal Black)
  • Heading Font: Bree Serif (Friendly, appetizing serif)
  • Body Font: Poppins (Modern, clean, legible sans-serif)

📅 Timeline (4 Weeks)

Week 1: Foundation & Menu Builder

Focus: Getting the business owner to input their data.

  • Infrastructure: Symfony + DDEV setup, Database schema (Multi-tenant via business_id).
  • Auth: Simple login/signup for Business Owners. (Static Mockups)
  • Menu Management:
    • CRUD for Categories. (Static Mockups)
    • CRUD for Menu Items (Name, Price, Description, Photo). (Static Mockups)
    • "Sold Out" toggle. (Static Mockups)
  • Owner Profile: Business name, Address, Logo. (Static Mockups)

Week 2: Diner Experience (The "Menu")

Focus: What the customer sees.

  • Public Menu View:
    • Fast, mobile-first Bootstrap 5 layout.
    • Category navigation (sticky top).
    • Search functionality (simple JS filter).
  • Simple Cart:
    • LocalStorage-based cart.
    • Modal/Drawer for cart review.
  • Order Submission:
    • Input customer name or identifier (optional).
    • Save order to DB.

Week 3: Staff Dashboard & Notifications

Focus: Closing the loop.

  • Staff Dashboard:
    • List of orders (New, Preparing, Completed, Cancelled). (Static Mockups)
    • Detailed order view with PNG receipt download. (Static Mockups)
    • Simple polling (every 10s) or SSE if time permits.
    • Audio alert on new order (HTML5 Audio).
  • Reliability & Notifications:
    • Email notification to owner on new order (using Symfony Mailer).
    • SMS alert integration for new orders.
  • QR Generation:
    • Simple integration with a QR library (e.g., endroid/qr-code) to generate the link to the public menu. (UI Mockup)

Week 4: Polish & Deployment

Focus: Getting it live.

  • Billing & Tiers:
    • Implement Free Tier: Includes "Powered by Digimenu" footer.
    • Implement Paid Tier: Removes branding, adds SMS alerts.
    • Admin flag for "Subscription Status".
  • Landing Page: Simple 1-page Bootstrap site explaining the value prop and pricing. (Renamed to Digimenu)
  • UX Refinements: Added "Beta" indicator and developer feedback widget for app testing.
  • Testing: Sanity checks on mobile (various screen sizes).
  • Deployment: Host on a simple VPS or PaaS.

🛠 Simplification & Optimization

1. Technical Shortcuts (Solo-Dev Friendly)

  • Repository Structure: Single Unified Repository (Monorepo) to keep everything simple and synchronized.
  • Frontend Architecture:
    • Admin UI: Preact (for a reactive, dashboard-like experience).
    • Public UI: Twig + Bootstrap 5 (for SEO, speed, and simplicity).
  • Use Symfony MakerBundle: Use make:auth, make:crud for everything. Don't over-engineer custom controllers.
  • Bootstrap 5 UI: Use standard components. Avoid custom CSS unless it's the clamp() rules for typography.
  • No Complex Media Handling: Use a simple service to upload to local storage first; S3 can wait for v2.
  • Manual Order Identifiers: In v1, just let the customer type their name or identifier if needed, instead of forcing table-specific logic. 1 QR code per business is enough for launch.

2. Features Removed from v1 (Moved to Phase 2)

  • Diner Accounts: Not needed. Keep it friction-less.
  • Online Payment Integration: GCash/Maya/Credit Card automated flows moved to Phase 2. Phase 1 uses manual payment (cash at counter or manual GCash show-receipt).
  • Analytics/Reports: Owner can check their order history list. No charts yet.
  • Advanced Theming: One clean, professional theme for all restaurants.

✅ Definition of "Done" for Launch

  • A business owner can sign up and create a menu.
  • A customer can scan a QR code, view the menu, and place an order.
  • The business staff gets an alert and can see the order on a screen.
  • You can manually activate/deactivate businesses based on payment.