Skip to content

doc: add comprehensive skills coverage (WIP)#98

Closed
esafwan wants to merge 21 commits intodevelopfrom
doc/add_comprehensive_skills_coverage
Closed

doc: add comprehensive skills coverage (WIP)#98
esafwan wants to merge 21 commits intodevelopfrom
doc/add_comprehensive_skills_coverage

Conversation

@esafwan
Copy link
Copy Markdown
Contributor

@esafwan esafwan commented Mar 26, 2026

Summary

  • Added comprehensive skills coverage across all URY features and sections
  • Skills are structured as modular, reusable guides
  • Enables faster agentic development and execution
  • Improves discoverability, consistency, and onboarding for AI agents

Commits (4 granular commits)

Commit Message Files
2b2a23d docs(skills): add comprehensive skills directory with 18 modular guides 19 new skill files
11cf950 docs: add Skills Directory section to AGENTS.md and README.md AGENTS.md, README.md
d9e89c8 docs: update FEATURES.md with multi-app architecture overview FEATURES.md
db81fda chore: remove obsolete IMPLEMENTATION_SUMMARY.md IMPLEMENTATION_SUMMARY.md

Changes Summary

  • +5,611 lines added in new skills documentation
  • +145 lines added across updated documentation files
  • -358 lines removed from obsolete file

esafwan added 21 commits March 26, 2026 04:37
…de, kiosk

Comprehensive code-informed architecture plan for extending URY into
customer-facing apps. Based on deep inspection of the existing codebase.

Documents:
- 00_AGENTS_CONTEXT.md: Frappe patterns + skill references for implementors
- implementation_plan.md: Master plan with key decisions summary
- 01: Repository understanding + API surface mapping
- 02: Capability gaps by target app + reuse analysis
- 03: Architecture recommendation + app model (all 5 experiences)
- 04: Code refactor plan + API readiness + domain model extensions
- 05: Technical user flows + proposed folder structure
- 06: 7-phase delivery plan + final recommendations

Key decisions:
- Single Frappe app (ury) with multiple frontend SPA entry points
- Monorepo with shared npm domain packages
- QR Table Self-Order as first customer-facing app
- Curbside as fulfillment mode (not separate app)
- Kiosk as separate thin shell
- Payment gateway abstraction (Stripe + Razorpay first)
Backend:
- Add URY Customer module with customer-facing APIs
- Add get_public_menu(), get_restaurant_info(), get_order_status(), validate_table_token()
- Add new fields to URY Restaurant (slug, accepts_online_orders, logo, opening_hours)
- Add new fields to URY Table (qr_token, qr_generated_at)
- Add new field to URY Menu (is_public)
- Update hooks.py with new website routes for customer ordering

Frontend Infrastructure:
- Move pos/ to apps/pos/ with updated build paths
- Add npm workspaces configuration
- Create @ury/config package (doctypes, order-types)
- Create @ury/ui package (button, card, dialog, input, select, badge, toast, spinner, loader)
- Create @ury/cart package (Zustand cart store with TypeScript)
- Create @ury/api-client package (Frappe SDK wrapper, menu-api, auth-api)

Refs: Phase 0 of multi-app architecture implementation
- Update README.md with new architecture overview and development setup
- Add comprehensive AGENTS.md for developers and AI agents
- Update TODO.md with Phase 0 completion status

Refs: Phase 0 documentation
- Add README.md for @ury/config package
- Add README.md for @ury/ui package
- Add README.md for @ury/cart package
- Add README.md for @ury/api-client package
- Add README.md for apps/pos

Refs: Phase 0 documentation completion
Add comprehensive summary of Phase 0 completion including:
- Backend changes (ury_customer module, DocType extensions)
- Frontend infrastructure (4 new shared packages)
- Documentation updates

Refs: Phase 0 complete
Add patch to create custom fields on POS Invoice for customer ordering:
- fulfillment_status (Select): Placed/Confirmed/Preparing/Ready/Served/Picked Up
- order_source (Select): POS/QR/Online/Kiosk/WhatsApp
- customer_order_token (Data): Unique token for guest order tracking
- scheduled_pickup_time (Datetime): For scheduled orders
- payment_gateway (Data): Which gateway processed payment
- payment_gateway_ref (Data): External payment reference

Refs: Phase 1 - Shared Ordering Core
…gnment

Add create_customer_order() API to ury_customer module:
- Accept guest orders from QR, Online, Kiosk apps
- Auto-assign cashier from active POS Opening Entry
- Generate unique order token for tracking
- Create POS Invoice with customer ordering fields
- Trigger KOT generation automatically
- Add update_fulfillment_status() for status transitions
- Real-time status updates via Frappe publish_realtime

Helper functions:
- get_active_cashier(): Find cashier from POS Opening
- get_pos_profile_for_cashier(): Get POS Profile for cashier
- get_or_create_customer(): Create guest customers

Refs: Phase 1 - Shared Ordering Core
Add @ury/order package:
- Order types (CreateOrderRequest, CreateOrderResponse, OrderStatus)
- Order API functions (createCustomerOrder, getOrderStatus, updateFulfillmentStatus)
- React hooks (useCreateOrder, useOrderStatus, useRealtimeOrderStatus)

Add @ury/menu package:
- Menu types (MenuItem, RestaurantInfo, TableContext)
- Menu API functions (getPublicMenu, getRestaurantInfo, validateTableToken)
- React hooks (usePublicMenu, useRestaurantInfo, useTableToken)

Refs: Phase 1 - Shared Ordering Core complete
Add apps/table-order React application:
- TokenResolver page for QR validation
- Menu page with category filtering and cart integration
- Cart page with customer details and checkout
- Professional mobile-first UI with Tailwind CSS
- Integration with @ury/menu, @ury/cart, @ury/order packages

Add generate_table_qr() API for staff to generate QR codes.

Refs: Phase 2 - QR Table Ordering MVP
Add testing documentation covering:
- Prerequisites and setup
- Backend API testing (cURL examples)
- Frontend testing workflows
- End-to-end scenarios
- Troubleshooting guide
- Performance testing
- Regression checklist

Refs: Phase 6 - Documentation
Phase 2 - QR Table Ordering:
- OrderStatus page with realtime updates and progress stepper
- Call waiter functionality

Phase 2.5 - Payment Gateway:
- URY Payment Gateway doctype with Stripe/Razorpay support
- Payment API with initiate_payment, verify_payment, handle_webhook
- Provider abstractions for extensibility

Phase 3 - Customer Ordering:
- apps/customer-order React app structure
- RestaurantLanding, Menu, Cart, Checkout, OrderTracking pages

Phase 5 - Kiosk Mode:
- apps/kiosk React app structure
- AttractScreen, Menu, ItemDetail, Cart, Checkout, Confirmation pages

All with professional UI, mobile-first design, TypeScript.

Refs: Phases 2, 2.5, 3, 5 complete
Customer Order App:
- Checkout page with pickup time selection
- OrderHistory page for past orders
- OrderTracking page for status tracking

Kiosk App:
- ItemDetailScreen with large touch targets
- MenuScreen with category ribbon

Refs: All frontend apps complete
- Add comprehensive implementation summary
- Add customer-order README
- Add kiosk CheckoutScreen and ConfirmationScreen

Refs: Final documentation
- DeviceSetup for initial kiosk configuration
- Utility functions for kiosk operations

Refs: Kiosk app final components
Update TODO tracker to show all phases (0-6) as complete.
Add implementation statistics and deployment checklist.

Refs: Project completion
Add AI agent skills documentation covering:
- Backend: frappe-patterns, doctypes, custom-fields, kot-generation,
  customer-api, staff-pos-api, payment-gateway, realtime
- Frontend: monorepo, api-client, cart-state, menu-hooks, order-hooks,
  ui-components
- Features: table-order-app, customer-order-app, kiosk-app
- Quality: testing

Each skill includes key files, patterns, extension points, dependencies,
and common gotchas for faster agent onboarding.
- Add comprehensive Skills Directory section to AGENTS.md with table
  of all 18 skills organized by category
- Document skill file format and usage instructions
- Add Skills section to README.md referencing the catalog
- Update skills count references to 18 total skills
Add comprehensive documentation for:
- QR Table Ordering (token-based, mobile-optimized, guest checkout)
- Online Customer Ordering (pickup/delivery, scheduled orders)
- Kiosk Self-Service (90s timeout, attract screen, large touch targets)
- Payment Gateway (Stripe, Razorpay, webhook handling)

Restructure with clear section hierarchy and feature summaries.
Delete superseded documentation file. All content now covered in:
- AGENTS.md (developer guide)
- FEATURES.md (feature documentation)
- skills/ (modular skill guides)
@esafwan esafwan marked this pull request as ready for review March 26, 2026 02:36
@esafwan esafwan marked this pull request as draft March 26, 2026 02:37
@esafwan esafwan closed this Mar 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant