37b83377ee09122879720382247d01adfc0bc818
This commit implements two optional steps that allow users to configure advanced features during the bakery setup process. Both steps can be skipped without blocking wizard completion. ## Implemented Steps ### 1. Quality Setup Step (QualitySetupStep.tsx) - Quality check template creation with full API integration - 6 check types: Visual, Measurement, Temperature, Weight, Timing, Checklist - Multi-select applicable stages (mixing, proofing, shaping, baking, etc.) - Optional description field - Required/Critical flags with visual indicators - Minimum requirement: 2 quality checks (skippable) - Grid-based type and stage selection with icons - Integration with useQualityTemplates and useCreateQualityTemplate hooks ### 2. Team Setup Step (TeamSetupStep.tsx) - Team member collection form (local state management) - Required fields: Name, Email - Role selection: Admin, Manager, Baker, Cashier - Grid-based role selection with icons and descriptions - Email validation and duplicate prevention - Team member list with avatar icons - Remove functionality - Fully optional (always canContinue = true) - Info note about future invitation emails - Skip messaging for solo operators ## Key Features ### Quality Setup Step: - ✅ Full backend integration with quality templates API - ✅ Visual icon-based check type selection - ✅ Multi-select stage chips (toggle on/off) - ✅ Required/Critical badges on template list - ✅ Form validation (name, at least one stage) - ✅ Optional badge prominently displayed - ✅ Progress tracking with "Need X more" messaging ### Team Setup Step: - ✅ Local state management (ready for future API) - ✅ Email validation with duplicate checking - ✅ Visual role cards with icons and descriptions - ✅ Team member list with role badges and avatars - ✅ Remove button for each member - ✅ Info note about invitation emails - ✅ Skip messaging for working alone - ✅ Always allows continuation (truly optional) ## Shared Features Across Both Steps: - ✅ "Optional" badge with explanatory text - ✅ "Why This Matters" information section - ✅ Inline forms (not modals) - ✅ Real-time validation with error messages - ✅ Parent notification via onUpdate callback - ✅ Responsive mobile-first design - ✅ i18n support with translation keys - ✅ Loading states - ✅ Consistent UI patterns with Phase 2 steps ## Technical Implementation ### Quality Setup: - Integration with qualityTemplateService - useQualityTemplates hook for fetching templates - useCreateQualityTemplate mutation hook - ProcessStage and QualityCheckType enums from API types - User ID from auth store for created_by field - Template list with badge indicators ### Team Setup: - Local TeamMember interface - useState for team members array - Email regex validation - Duplicate email detection - Role options with metadata (icon, label, description) - Ready for future team invitation API integration ## Files Modified: - frontend/src/components/domain/setup-wizard/steps/QualitySetupStep.tsx (406 lines) - frontend/src/components/domain/setup-wizard/steps/TeamSetupStep.tsx (316 lines) Total: **722 lines of new functional code** ## Related: - Builds on Phase 1 (foundation) and Phase 2 (core steps) - Integrates with quality templates service - Prepared for future team invitation service - Follows design specification in docs/wizard-flow-specification.md - Addresses JTBD findings about quality and team management ## Next Steps (Phase 4+): - Smart features (auto-suggestions, smart defaults) - Polish & animations - Comprehensive testing - Template systems enhancement - Bulk import functionality
🍞 Bakery IA - Multi-Service Architecture
Welcome to Bakery IA, an advanced AI-powered platform for bakery management and optimization. This project implements a microservices architecture with multiple interconnected services to provide comprehensive bakery management solutions.
🚀 Quick Start
Prerequisites
- Docker Desktop with Kubernetes enabled
- Docker Compose
- Node.js (for frontend development)
Running the Application
-
Clone the repository:
git clone <repository-url> cd bakery-ia -
Set up environment variables:
cp .env.example .env # Edit .env with your specific configuration -
Run with Docker Compose:
docker-compose up --build -
Or run with Kubernetes (Docker Desktop):
# Enable Kubernetes in Docker Desktop # Run the setup script ./scripts/setup-kubernetes-dev.sh
🏗️ Architecture Overview
The project follows a microservices architecture with the following main components:
- Frontend: React-based dashboard for user interaction
- Gateway: API gateway handling authentication and routing
- Services: Multiple microservices handling different business domains
- Infrastructure: Redis, RabbitMQ, PostgreSQL databases
🐳 Kubernetes Infrastructure
🛠️ Services
The project includes multiple services:
- Auth Service: Authentication and authorization
- Tenant Service: Multi-tenancy management
- Sales Service: Sales processing
- External Service: Integration with external systems
- Training Service: AI model training
- Forecasting Service: Demand forecasting
- Notification Service: Notifications and alerts
- Inventory Service: Inventory management
- Recipes Service: Recipe management
- Suppliers Service: Supplier management
- POS Service: Point of sale
- Orders Service: Order management
- Production Service: Production planning
- Alert Processor: Background alert processing
📊 Monitoring
The system includes comprehensive monitoring with:
- Prometheus for metrics collection
- Grafana for visualization
- ELK stack for logging (planned)
🚀 Production Deployment
For production deployment on clouding.io with Kubernetes:
- Set up your clouding.io Kubernetes cluster
- Update image references to your container registry
- Configure production-specific values
- Deploy using the production kustomization:
kubectl apply -k infrastructure/kubernetes/environments/production/
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
📄 License
This project is licensed under the MIT License.
Description
Languages
Python
56.3%
TypeScript
39.6%
Shell
2.9%
CSS
0.4%
Starlark
0.3%
Other
0.3%