Skip to content

User Stories Documentation

This directory contains user stories that define the features and functionality of the Bartendie application.

Stories are ordered by importance (sidebar_position) based on tier structure:

Tier 1: Foundation

  • add_venue.md - Create a new venue
  • add_user.md - Add user profile with name, email, and phone
  • add_bar.md - Add a bar to a venue
  • set_current_venue.md - Set the current venue for app context
  • use_venue_locations_for_inventory.md - Use venue bars/storage for inventory locations
  • use_selectable_location_fields.md - Use dropdowns instead of text inputs for locations
  • add_tool.md - Add bar tools to inventory

Tier 2: Event Core

  • schedule_an_event.md - Schedule and manage events

Tier 3: Event Planning

  • create_menu_for_event.md - Create menu for an event
  • add_recipe_to_menu.md - Add recipe to event menu
  • manage_guests_for_event.md - Manage event guest list
  • set_event_hosts.md - Set users as hosts of an event

Tier 4: Shopping & Inventory

  • generate_shopping_list.md - Generate shopping list from menu
  • update_inventory_after_shopping.md - Update inventory after shopping

Tier 5: Event Execution

  • setup_bar_for_event.md - Prepare bar setup for event
  • organize_speed_rail.md - Organize speed rail setup

Inventory & Recipes

  • brand_autocomplete.md - Use auto-complete with add for Brand fields on products
  • scan_bottle_to_add.md - Scan barcode to add product
  • make_recipe.md - Step-by-step guided recipe making with inventory tracking
  • implement_custom_bar_icons.md - Implement custom icons for bar-specific items

Testing & Quality Assurance

  • migrate-jest-to-vitest.md - Migrate test framework from Jest to Vitest

These files contain comprehensive user stories for major feature areas, ordered by tier/importance:

Tier 7: Ingredient & Product Management

  • ingredient_product_mappings/index.md - Ingredient abstraction and product mapping (8 stories)
    • Individual stories in ingredient_product_mappings/ directory

Tier 8: Flavor Profiles

  • flavors/index.md - Flavor analysis and menu balancing (9 stories)
    • Individual stories in flavors/ directory

Tier 9: Batch Cocktails

  • batch-cocktails.md - Batch cocktail preparation (8 stories)

Tier 10: Tagging

  • tags/index.md - Tagging and organization system (10 stories)
    • Individual stories in tags/ directory

Feature Areas

  • bar_setups/index.md - Bar setup and tool management (9 stories)
    • Individual stories in bar_setups/ directory
  • barcodes/index.md - Barcode scanning and product lookup (9 stories)
    • Individual stories in barcodes/ directory
  • shopping_lists/index.md - Shopping list management (7 stories)
    • Individual stories in shopping_lists/ directory

Fully implemented stories have been moved to the completed/ directory:

Individual Stories:

  • completed/add_bottle.md - Add a bottle to inventory ✅
  • completed/add_recipe.md - Create a new recipe ✅
  • completed/track_product_price_history.md - Track product prices over time ✅
  • completed/product_substitution_suggestions.md - Get intelligent product substitution suggestions ✅

Shopping Lists (6 completed):

  • completed/generate_shopping_list_from_event_menu.md
  • completed/manually_add_items_to_shopping_list.md
  • completed/check_off_items_while_shopping.md
  • completed/view_shopping_list_by_category.md
  • completed/update_inventory_from_shopping_list.md
  • completed/track_shopping_list_cost.md

Ingredient & Product Mappings (6 completed):

  • completed/define_generic_ingredients.md
  • completed/define_ingredient_flavor_profiles.md
  • completed/track_ingredient_usage_across_recipes.md
  • completed/suggest_product_substitutions.md
  • completed/view_available_products_for_recipe_ingredient.md
  • completed/map_products_to_generic_ingredients.md

Flavors (3 completed):

  • completed/define_ingredient_flavor_characteristics.md
  • completed/view_product_flavor_profiles.md
  • completed/view_recipe_flavor_balance.md

Tags (1 completed):

  • completed/tag_products.md

Barcodes (1 completed):

  • completed/scan_multiple_products_in_batch.md

Total Completed: 21 stories

  • Total Feature Area Stories: 60 user stories across 7 feature areas
  • Completed Stories: 21 stories (moved to completed/ directory)
  • Active Stories: 39+ stories remaining
  • High Priority Stories: 11 stories
  • Medium Priority Stories: 21 stories
  • Low Priority Stories: 29 stories
  • High: Core functionality essential for the feature to be useful
  • Medium: Important enhancements that significantly improve user experience
  • Low: Nice-to-have features that add polish and convenience
  1. For Product Managers: Use these stories to understand feature scope and plan releases
  2. For Developers: Reference acceptance criteria when implementing features
  3. For QA: Use acceptance criteria as test cases
  4. For Designers: Understand user needs and workflows when creating UI/UX

All story files follow a consistent format:

  1. Frontmatter: Each file must have frontmatter with:

    • title: The story title (used for page title and navigation)
    • sidebar_position: Numeric position for sidebar ordering (lower = higher priority)
  2. Content Structure:

    • No H1 heading (redundant with frontmatter title)
    • Start directly with the user story narrative (“As a Host…”)
    • Use ## Acceptance Criteria for requirements
    • Use ## Related Commands for command references
  3. Multi-Story Files: Feature area collections (like flavor-profiles.md) contain multiple stories:

    • Main description paragraph after frontmatter
    • Each story uses ## Story: [Title] heading
    • Each story has its own Acceptance Criteria, Priority, and Related Entities sections

When adding new user stories:

  1. Follow the established format (As a/I want to/So that)
  2. Include specific, testable acceptance criteria
  3. Assign appropriate priority (High/Medium/Low)
  4. Reference related domain entities
  5. Set sidebar_position based on tier/importance
  6. Do NOT include an H1 heading (frontmatter title is sufficient)
  7. Update this README with the new story