# 🍞 BakeWise - Multi-Service Architecture Welcome to BakeWise, 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 1. **Clone the repository:** ```bash git clone cd bakery-ia ``` 2. **Set up environment variables:** ```bash cp .env.example .env # Edit .env with your specific configuration ``` 3. **Run with Docker Compose:** ```bash docker-compose up --build ``` 4. **Or run with Kubernetes (Docker Desktop):** ```bash # 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: 1. Set up your clouding.io Kubernetes cluster 2. Update image references to your container registry 3. Configure production-specific values 4. Deploy using the production kustomization: ```bash kubectl apply -k infrastructure/environments/prod/k8s-manifests ``` ## 🤝 Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Submit a pull request ## 📄 License This project is licensed under the MIT License.