- Main entry point for all client requests
- Handles authentication and request validation
- Orchestrates communication between services
- Manages template generation and deployment
- Monitors email inbox for new requests
- Processes incoming emails and extracts requirements
- Forwards requests to API service
- Sends status updates via email
- Web interface for interacting with the platform
- Form for submitting IaC generation requests
- Dashboard for monitoring deployments
- Collection of reusable IaC templates
- Organized by cloud provider and service type
- Version controlled and tested
- User submits request via Web UI or Email
- Request is validated and processed by API service
- LLM generates appropriate IaC configuration
- Configuration is validated and stored
- Deployment is initiated (if requested)
- Status updates are sent back to the user
- All API endpoints require authentication
- Sensitive data is encrypted at rest and in transit
- Rate limiting and request validation in place
- Regular security audits and dependency updates
- Stateless services for horizontal scaling
- Redis for caching and rate limiting
- Asynchronous processing for long-running tasks
- Monitoring and auto-scaling based on load