{"id":31932999,"url":"https://github.com/mlsakiit/composegenie","last_synced_at":"2025-10-14T05:48:48.858Z","repository":{"id":318047145,"uuid":"1069571454","full_name":"MLSAKIIT/ComposeGenie","owner":"MLSAKIIT","description":"MLSA Hacktoberfest 2025: Cloud Domain ComposeGenie is a portal that generates production ready Docker Compose files, integrates Docker Hub for service selection","archived":false,"fork":false,"pushed_at":"2025-10-04T17:32:02.000Z","size":197,"stargazers_count":1,"open_issues_count":8,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-04T19:18:19.008Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MLSAKIIT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-04T07:30:20.000Z","updated_at":"2025-10-04T17:32:05.000Z","dependencies_parsed_at":"2025-10-04T19:18:20.689Z","dependency_job_id":"1f58f630-83ba-44fd-a905-2ef1ebdc3d1a","html_url":"https://github.com/MLSAKIIT/ComposeGenie","commit_stats":null,"previous_names":["mlsakiit/composegenie"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/MLSAKIIT/ComposeGenie","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MLSAKIIT%2FComposeGenie","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MLSAKIIT%2FComposeGenie/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MLSAKIIT%2FComposeGenie/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MLSAKIIT%2FComposeGenie/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MLSAKIIT","download_url":"https://codeload.github.com/MLSAKIIT/ComposeGenie/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MLSAKIIT%2FComposeGenie/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018014,"owners_count":26086237,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest"],"created_at":"2025-10-14T05:48:47.596Z","updated_at":"2025-10-14T05:48:48.851Z","avatar_url":"https://github.com/MLSAKIIT.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ComposeGenie\n\nA comprehensive web portal for generating production-ready docker-compose files with automated security scanning, misconfiguration detection, and intelligent service recommendations from Docker Hub.\n\nTo be eligible for MLSA X HACKTOBERFEST: \nRegister here: https://register.mlsakiit.com/\nStar this repo: https://github.com/keploy/keploy\n\n\n## Key Features\n\n### 📦 Docker Hub Integration\n\n- **Service Catalog**: Browse and search Docker Hub for official and verified images\n- **Version Selection**: Choose from available image versions and tags\n- **Automated Fetching**: Real-time service information from Docker Hub\n- **Image Metadata**: View pulls, stars, descriptions, and documentation\n\n### Security Scanning (Pre-Download)\n\n- **Vulnerability Detection**: Scan images for CVEs before downloading compose file\n- **Severity Assessment**: Identify critical, high, medium, and low vulnerabilities\n- **Alternative Suggestions**: Automatically suggest safer image versions if severe issues found\n- **Block Downloads**: Prevent downloading files with critical security issues\n- **Risk Reports**: Detailed security assessment for each service\n\n### Misconfiguration Detection\n\n- **Port Conflict Detection**: Identify overlapping port mappings across services\n- **Missing Environment Variables**: Detect required env vars not configured\n- **Resource Limits**: Warn about missing CPU/memory constraints\n- **Volume Mount Issues**: Validate volume paths and permissions\n- **Network Configuration**: Check network settings and connectivity\n- **Dependency Issues**: Validate service dependencies and startup order\n\n### Intelligent Recommendations\n\n- **Version Alternatives**: Suggest different image versions when vulnerabilities detected\n- **Security Patches**: Recommend patched versions with fixes\n- **Performance Optimization**: Suggest lighter or faster image alternatives\n- **Best Practices**: Configuration improvements based on Docker standards\n\n## 🏗️ Architecture\n\n\u003cimg width=\"1283\" height=\"492\" alt=\"Untitled Diagram drawio\" src=\"https://github.com/user-attachments/assets/eb4d2c4d-b2d0-416f-8af5-d4a88a5d8316\" /\u003e\n\n### Folder Structure\n```\ndocker_compose_generator/\n├── frontend/                  # React web portal\n│   ├── src/components/       # UI components\n│   │   ├── ServiceCatalog/   # Docker Hub service browser\n│   │   ├── ComposerBuilder/  # Compose file builder\n│   │   ├── SecurityDashboard/ # Vulnerability scan results\n│   │   └── ValidationPanel/   # Misconfiguration warnings\n│   └── src/pages/            # Application pages\n├── backend/                   # Node.js API server\n│   ├── src/routes/           # REST API endpoints\n│   ├── src/controllers/      # Request handlers\n│   ├── src/services/         # Business logic\n│   │   ├── dockerhub.js      # Docker Hub API integration\n│   │   ├── compose.js        # Compose file generation\n│   │   └── validation.js     # Configuration validation\n│   └── src/models/           # Database models\n└── services/                  # Specialized microservices\n    ├── security-scanner/      # CVE scanning (Python/FastAPI)\n    ├── config-validator/      # Misconfiguration detection (Go)\n    └── template-generator/    # Template management (Node.js)\n```\n\n## 🛠️ Technology Stack\n\n### Frontend\n\n- **React 19** with modern hooks and functional components\n- **React Router 7** for client-side routing\n- **TypeScript** for type-safe development\n- **Tailwind CSS 4** for responsive UI design\n- **Vite** for fast build and development\n\n### Backend\n\n- **Node.js** with Express framework\n- **MongoDB** for data persistence (templates, scan cache)\n- **Docker Hub API** for service catalog integration\n- **Express Rate Limit** for API throttling\n- **Winston** structured logging\n\n### Microservices\n\n- **Python/FastAPI** (Security Scanner) - Trivy integration for CVE scanning\n- **Go/Gin** (Config Validator) - High-performance validation engine\n- **Node.js/Express** (Template Generator) - Template management\n- **Redis** for caching and job queuing\n- **PostgreSQL** for scan results and analytics\n\n## 🚦 Getting Started\n\n### Prerequisites\n\n- Node.js 22+ (LTS)\n- Python 3.9+\n- Go 1.21+\n- MongoDB 8.0+\n- Redis 7.4+\n- Docker \u0026 Docker Compose\n\n### Quick Start\n\n```bash\n# Clone the repository\ngit clone https://github.com/Sanjeev-Kumar78/docker_compose_generator.git\ncd docker_compose_generator\n\n# Start all services with Docker Compose\ndocker-compose up -d\n\n# Or run individual components:\n\n# Frontend (React App)\ncd frontend \nnpm install\nnpm run dev\n\n# Backend API\ncd backend \nnpm install \nnpm run dev\n\n# Microservices\ncd services/security-scanner\npython -m uvicorn main:app --reload\ncd services/template-generator \nnpm run dev\ncd services/config-validator\ngo run main.go\n```\n\nThe application (Local Runtime Endpoints) will be available at:\n\n- **Frontend**: http://localhost:3000\n- **Backend API**: http://localhost:3001\n- **Security Scanner**: http://localhost:8001\n- **Template Generator**: http://localhost:8002\n- **Config Validator**: http://localhost:8003\n\n## 🎯 Use Cases\n\n### Development Teams\n\n- **Quick Setup**: Browse Docker Hub and compose multi-service environments rapidly\n- **Safe Dependencies**: Pre-scanned images ensure secure development environments\n- **Error Prevention**: Catch port conflicts and missing configs before runtime\n- **Learning Tool**: Understand service configurations and relationships\n\n### DevOps Engineers\n\n- **Production Deployment**: Generate secure, validated compose files\n- **Security Compliance**: Automated vulnerability scanning before deployment\n- **Configuration Validation**: Prevent common deployment failures\n- **Version Management**: Evaluate and select safe image versions\n\n### Security Teams\n\n- **Vulnerability Prevention**: Block downloads with critical security issues\n- **Risk Assessment**: Detailed security reports for all services\n- **Compliance Checking**: Validate against security standards\n- **Audit Trail**: Track security scan results and decisions\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see [CONTRIBUTOR.md](CONTRIBUTING.md) for guidelines on:\n\n- Setting up the development environment\n- Code style and standards\n- Submitting pull requests\n- Reporting issues\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🌟 Roadmap\n\n- [x] Basic project structure\n- [x] Frontend framework setup (React 19 + Vite + TypeScript)\n- [ ] Docker Hub API integration for service catalog\n- [ ] Docker Compose file builder UI\n- [ ] Security scanner service (CVE detection)\n- [ ] Configuration validator service (misconfiguration detection)\n- [ ] Port conflict detection\n- [ ] Missing environment variable detection\n- [ ] Alternative version suggestion engine\n- [ ] Download blocking for severe vulnerabilities\n- [ ] Template management system\n- [ ] Export options (Compose, Swarm, Kubernetes)\n- [ ] CI/CD pipeline integration\n\n## 📚 Documentation\n\n- **[Architecture](ARCHITECTURE.md)**: Complete system architecture and data flows\n- **[Quick Reference](docs/QUICK_REFERENCE.md)**: Quick start guide and API reference\n- **[Backend README](backend/README.md)**: Backend API documentation\n- **[Frontend README](frontend/README.md)**: Frontend documentation\n- **[Services README](services/README.md)**: Microservices overview\n\n## 📞 Support\n\n- **Documentation**: [Wiki](https://github.com/Sanjeev-Kumar78/docker_compose_generator/wiki)\n- **Issues**: [GitHub Issues](https://github.com/Sanjeev-Kumar78/docker_compose_generator/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/Sanjeev-Kumar78/docker_compose_generator/discussions)\n\n---\n\n**Made with ❤️ for the Docker community**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmlsakiit%2Fcomposegenie","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmlsakiit%2Fcomposegenie","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmlsakiit%2Fcomposegenie/lists"}