98 lines
2.7 KiB
Markdown
98 lines
2.7 KiB
Markdown
# 🍞 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 <repository-url>
|
|
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/kubernetes/environments/production/
|
|
```
|
|
|
|
## 🤝 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.
|