|
π Personal Learning Project This repository is developed for educational purposes and personal skill development. |
Meet Manuel, your AI-powered voice assistant managing all product manuals using AWS Bedrock
Manuel is your friendly AI assistant who specializes in helping you find answers in your product manuals. Whether you're setting up a new device, troubleshooting an issue, or learning advanced features, Manuel is here to help with both text and voice queries. Just like a helpful concierge, Manuel knows your manuals inside and out!
- AWS CLI configured with appropriate permissions
- Node.js 18+ for frontend and build tools
- Python 3.11+ for backend development
- SAM CLI for serverless deployment
cd backend
sam build
sam deploy --template template-minimal.yaml --resolve-s3cd frontend/packages/ios-app
npm install
expo startcd frontend
npm install
npm run cli -- --help
# Quick commands:
npm run cli auth login
npm run cli manuals list
npm run cli ask "your question"
npm run cli query voice- Backend Documentation - AWS serverless backend
- Frontend Documentation - Dual-platform frontend architecture
- iOS App Documentation - React Native iOS app
- CLI App Documentation - Command-line interface
- Shared Library Documentation - Common business logic
- Contributing Guidelines - Development workflow
- Remote Setup Guide - Repository setup
- Security Policy - Security guidelines
graph TB
A[iOS App - React Native] --> B[API Gateway]
C[CLI App - Node.js] --> B
D[Shared Library] --> A
D --> C
B --> E[Lambda Functions]
E --> F[AWS Bedrock]
E --> G[DynamoDB]
E --> H[S3]
E --> I[Cognito]
E --> J[Transcribe]
F --> K[Claude 3.5 Sonnet]
F --> L[Titan Embeddings]
F --> M[Knowledge Base with User Filtering]
N[CloudWatch] --> O[Monitoring Dashboard]
P[WAF] --> B
Q[Redis Cache] --> E
- Backend: AWS Serverless (Lambda, API Gateway, DynamoDB, S3)
- AI/ML: AWS Bedrock (Claude 3.5 Sonnet, Titan Embeddings)
- Frontend: Dual-platform architecture
- iOS: React Native with Expo
- CLI: Node.js with Commander.js and Inquirer
- Shared: TypeScript library with platform adapters
- Authentication: AWS Cognito with JWT tokens
- Monitoring: CloudWatch with custom dashboards
- Security: Multi-layer security with WAF and middleware
- Performance: Redis caching and connection pooling
- Testing: Comprehensive integration testing with chaos engineering
- Enhanced API Security: Rate limiting (50 req/15min) with automatic retry logic
- Multi-Layer Security: WAF protection + application middleware
- User Data Isolation: Complete separation of user data using metadata filtering
- Input Validation: Advanced XSS and SQL injection prevention with sanitization
- VPC Security: Private subnet isolation with secure VPC endpoints
- Authentication: JWT-based authentication with refresh tokens
- Encryption: Data encryption at rest and in transit
- Security Headers: Comprehensive security headers (HSTS, CSP, X-Frame-Options)
- IP Allowlisting: Configurable IP address restrictions
- Redis Caching: Secure Redis caching with user isolation
- Smart Error Handling: User-friendly security error messages and recovery tips
- Security Testing: Automated security scanning and penetration testing
- Integration Testing: Comprehensive test suite with 7 test categories
- Chaos Engineering: Failure scenario simulation and resilience testing
- Security Testing: Vulnerability scanning and penetration testing
- Performance Testing: Load testing and performance benchmarking
- Code Quality: Pre-commit hooks with linting and formatting
- CI/CD Pipeline: Automated testing and deployment
- Coverage: Minimum 80% test coverage requirement
- Real-time Dashboards: CloudWatch dashboards with custom metrics
- Structured Logging: JSON-formatted logs with correlation IDs
- Custom Metrics: Business KPIs and performance indicators
- Alerting: SNS notifications for critical events
- Cost Tracking: Real-time cost calculation and optimization
- Error Tracking: Advanced error handling with retry strategies
- Performance Monitoring: Response time and throughput tracking
- Basic resource allocation
- Permissive CORS settings
- No email alerts
- Local testing support
- Enhanced performance configuration
- Restricted CORS to specific domains
- Email alerts enabled
- X-Ray tracing enabled
- Extended log retention
- Conservative quotas for cost control
- Enhanced monitoring and alerting
- Cross-region inference profiles
- Comprehensive performance tracking
We welcome contributions! Please read our Contributing Guidelines for details on:
- Code of conduct
- Development setup
- Commit message standards (Conventional Commits)
- Pull request process
- Code review guidelines
# Clone the repository
git clone https://github.com/a1o1/manuel.git
cd manuel
# Install commitizen for conventional commits
pipx install commitizen
# Backend setup
cd backend
pip install -r requirements.txt
pip install -r tests/integration/fixtures/requirements.txt
# Install pre-commit hooks
pre-commit installThis project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: Check the comprehensive documentation in each module
- Issues: Report bugs and request features via GitHub Issues
- Discussions: Use GitHub Discussions for questions and community support
- Security: Report security vulnerabilities privately via security@manuel.com
- β Enterprise-grade backend architecture
- β Multi-layer security implementation
- β Comprehensive testing framework
- β Monitoring and observability
- β CI/CD pipeline setup
- β Dual-platform frontend architecture
- β React Native iOS application
- β Node.js CLI application
- β Shared business logic library
- β Platform adapter pattern
- β Voice recording and playback
- β Authentication integration
- β Interactive terminal interface
- β User data isolation and testing framework
- β Environment switching for development
- β End-to-end voice query functionality
- β File deduplication system
- β URL-based manual upload
- β Enhanced CLI security features (v1.0.2)
- β Redis caching for performance optimization
- β Advanced API security hardening
- π Multi-language support
- π Advanced analytics dashboard
- π Custom model fine-tuning
- π Enterprise SSO integration
- π Multi-region deployment
- π Advanced caching strategies
- π Performance optimization
- π Cost optimization features