page:blueprints:restaurants:product catalog:django

Restaurants: Product Catalog Using Django

Summary

A product catalog blueprint for restaurants built with Django on Ample.

Domain Schema:

Public information includes the menu with allergens and prices, locations, hours and reservations contact, and catering information. Customer contact and payment details, along with staff schedules are kept out of scope until further review. It is emphasized that allergen information must be kept accurate by the operator, and nothing here validates food-safety claims.

Technical Basis

Verified on Django with an optimistic version check, event row written in the same transaction, stale updates rejected, and a history query over the application-owned events (history=2 conflict=rejected).

Representative Queries

Workflow Steps

  1. Model the restaurants domain: Create the tables menu_items, stock_movements, orders, order_lines, events.
  2. Workflow step 1: Model the SKU catalog with versioned updates.
  3. Workflow step 2: Record every catalog change as an event in the same transaction.
  4. Workflow step 3: Reject stale concurrent updates.
  5. Workflow step 4: Deploy and verify history and conflict handling.
  6. Deploy: Run the synchronous deploy and read the result. Re-running with no change is a no-op.
  7. Verify: Run the pattern self-test(s) from the example.

Cost Estimate

Components:

Limitations

Examples

Success Checks

  1. App responds on its public URL.
  2. Transactional-workflows self-test from the example.

Infrastructure Requirements

Formats