seatkit

SeatKit - Claude Collaboration Context

Last Updated: 2025-10-26 Project Status: Backend Infrastructure Complete βœ… Current Phase: API Development & Testing Next Milestone: Complete CRUD Operations


🎯 Project Overview

SeatKit is an open-source restaurant reservation management system, designed specifically for high-turnover, small-seat restaurants that need sophisticated table management and real-time collaboration.

Origin Story

Why This Project Matters


πŸͺ Business Context

Restaurant Profile: Koenji (Original Customer)

Current Usage Statistics (Last 7 Days)

Core Business Requirements

  1. High-Turnover Optimization: Fit maximum reservations without overcrowding
  2. Visual Layout Management: Staff need to β€œsee” table arrangements and availability
  3. Real-Time Collaboration: Multiple staff updating reservations simultaneously
  4. Sales Automation: End-of-shift data entry with manager-only editing
  5. Flexibility: Handle walk-ins, changes, and special requests dynamically

πŸš€ Technical Mission

Current State (Swift iOS App)

Target State (TypeScript Web App)

Migration Strategy


🎯 Success Criteria

MVP Definition

A working reservation management system that staff can use for core operations:

βœ… Essential Features (Must Have)

🎯 Important Features (Should Have)

πŸ’‘ Nice to Have Features (Could Have)

Performance Targets

User Experience Goals


πŸ›  Development Context

Solo Developer Project

Technology Decisions Made (Phase 1)

See ARCHITECTURE.md for complete details:

Code Quality Standards

Recent Architectural Decisions

Date Handling:

Error Handling:

State Management (Updated):


πŸ“Š Project Architecture

Package Organization

seatkit/
β”œβ”€β”€ packages/
β”‚   β”œβ”€β”€ types/          # Zod schemas + TypeScript types (FOUNDATION)
β”‚   β”œβ”€β”€ utils/          # Shared utilities
β”‚   β”œβ”€β”€ engine/         # Business logic (reservations, tables, clustering)
β”‚   β”œβ”€β”€ ui/             # shadcn-based design system
β”‚   β”œβ”€β”€ api/            # Backend API + database layer
β”‚   β”œβ”€β”€ web/            # Frontend web application
β”‚   └── config/         # Shared tooling configs
β”œβ”€β”€ docs/              # Comprehensive documentation
└── tools/             # Development utilities

Package Development Status

Current implementation progress across packages:

Domain Model Overview

Core Entities (detailed in DOMAIN.md):

Real-Time Architecture


🎨 User Experience Vision

Primary Users: Restaurant Staff

Key User Workflows

  1. Taking a Reservation: Phone call β†’ find available slot β†’ confirm booking
  2. Managing Tables: Visual layout β†’ assign parties β†’ track status
  3. Handling Changes: Guest calls β†’ modify reservation β†’ update staff
  4. End of Service: Enter sales data β†’ review day performance
  5. Weekly Planning: Analyze trends β†’ adjust availability β†’ optimize layout

Interface Philosophy


🌟 Open Source Strategy

Target Audience

Differentiation

Contribution Strategy


πŸ“ˆ Future Vision

Short Term (3-6 months)

Medium Term (6-12 months)

Long Term (1+ years)


🀝 Collaboration Guidelines

Working with Claude

Development Priorities

  1. Correctness: Get the domain model and business logic right
  2. Performance: Real-time operations must be fast and reliable
  3. User Experience: Staff efficiency is paramount
  4. Maintainability: Code should be easy to understand and extend
  5. Documentation: Every design decision should be explained

Communication Style



This document serves as the primary context for all SeatKit development. Keep it updated as the project evolves and new insights emerge.