Skip to content

Cyril-36/Codie

Codie β€” AI Code Review Assistant

Secure, efficient, and explainable AI platform for end-to-end code quality

License: MIT Python 3.11+ Node.js 18+ Docker Ready


✨ Key Features

πŸ—ΊοΈ Repository-wide dependency mapping and hotspots
πŸ” Dynamic runtime analysis for regressions
πŸ’¬ Chat-first, explainable reviews with diffs and one-click fixes
🎯 Adaptive style learning (project-specific)
πŸ§ͺ AI test generation (Java via Diffblue, JS/Python via GPT)
πŸ’° ROI-ranked refactoring guidance
πŸ›‘οΈ CVE-enriched security remediation
πŸŽ›οΈ Confidence-scored noise filtering

This repository is a monorepo with backend, frontend, AI orchestration, infrastructure, and comprehensive documentation with automated changelogs and governance.

πŸ—οΈ Architecture Overview

graph TB
    subgraph "User Interface"
        UI["🎨 UI<br/>Monaco Editor + D3 Viz"]
    end
    
    subgraph "API Gateway"
        GW["πŸšͺ API Gateway<br/>Authentication & Routing"]
    end
    
    subgraph "Core Services"
        AUTH["πŸ” Security<br/>User Management"]
        ANALYSIS["πŸ” Analysis<br/>Static & Runtime"]
        AI["πŸ€– AI Orchestrator<br/>LLM Integration"]
        REVIEW["πŸ“ Review<br/>Code Analysis"]
    end
    
    subgraph "Testing & Quality"
        TEST["πŸ§ͺ Tests<br/>Generation & Execution"]
        METRICS["πŸ“Š Metrics<br/>Quality Scoring"]
    end
    
    subgraph "Data Layer"
        DB[("🐘 PostgreSQL<br/>Application Data")]
        CACHE[("πŸ”΄ Redis<br/>Session & Cache")]
        STORAGE[("πŸ“¦ MinIO<br/>File Storage")]
    end
    
    UI --> GW
    GW --> AUTH
    GW --> ANALYSIS
    GW --> AI
    GW --> REVIEW
    
    ANALYSIS --> TEST
    AI --> REVIEW
    REVIEW --> METRICS
    
    AUTH --> DB
    ANALYSIS --> DB
    AI --> CACHE
    REVIEW --> DB
    TEST --> STORAGE
    METRICS --> DB
Loading

Architecture diagram showing the core components and data flow

πŸ“ Monorepo Structure

Codie/
β”œβ”€β”€ πŸ”§ codie-backend/     # FastAPI microservices
β”‚   β”œβ”€β”€ API Gateway
β”‚   β”œβ”€β”€ Analysis orchestration
β”‚   β”œβ”€β”€ Static/runtime analysis
β”‚   β”œβ”€β”€ Style ML & LLM review
β”‚   └── Security & scoring
β”œβ”€β”€ 🎨 codie-frontend/     # Next.js/React with Tailwind
β”‚   β”œβ”€β”€ Radix UI components
β”‚   β”œβ”€β”€ Monaco editor
β”‚   └── D3/VisX visualizations
β”œβ”€β”€ πŸ€– ai-agents/          # AI prompts & automation
β”‚   β”œβ”€β”€ Prompts & pipelines
β”‚   β”œβ”€β”€ .clinerules
β”‚   └── Codemods & scripts
β”œβ”€β”€ 🐳 infra/              # Infrastructure & DevOps
β”‚   β”œβ”€β”€ Docker Compose (local)
β”‚   β”œβ”€β”€ Kubernetes manifests
β”‚   └── CI/CD configurations
└── πŸ“š docs/               # Comprehensive documentation
    β”œβ”€β”€ PRDs & architecture
    β”œβ”€β”€ Service documentation
    β”œβ”€β”€ DevOps runbooks
    └── ADRs & OpenAPI specs

πŸš€ Quick Start

Prerequisites

β€’ 🐳 Docker & Docker Compose
β€’ 🟒 Node.js 18+
β€’ 🐍 Python 3.11+
β€’ πŸ’Ύ Git

Installation

  1. Clone the repository

    git clone https://github.com/Cyril-36/Codie.git
    cd Codie
  2. Set up environment

    # Copy environment templates
    cp .env.sample .env
    # Fill in your secrets and configuration
  3. Start the application

    docker compose up --build
  4. Access the services β€’ 🌐 Frontend: http://localhost:5174
    β€’ πŸ“‘ Backend API: http://localhost:8000/docs
    β€’ πŸ—„οΈ MinIO: http://localhost:9001
    β€’ 🐘 PostgreSQL: localhost:5432
    β€’ πŸ”΄ Redis: localhost:6379

πŸ› οΈ Tech Stack

Backend

β€’ Framework: FastAPI
β€’ Language: Python 3.11+
β€’ Database: PostgreSQL
β€’ Cache: Redis
β€’ Storage: MinIO
β€’ Container: Docker

Frontend

β€’ Framework: Next.js/React
β€’ Styling: Tailwind CSS
β€’ Components: Radix UI
β€’ Editor: Monaco
β€’ Visualization: D3, VisX

AI & ML

β€’ LLM Integration: GPT-4, Claude
β€’ Code Analysis: AST parsing
β€’ Test Generation: Diffblue (Java)
β€’ Style Learning: Custom ML models

DevOps & Infrastructure

β€’ Containerization: Docker, Docker Compose
β€’ Orchestration: Kubernetes
β€’ CI/CD: GitHub Actions
β€’ Monitoring: Custom metrics

πŸ“Έ Screenshots

🏠 Dashboard Overview

Coming soon - Dashboard interface

πŸ“Š Code Analysis Report

Coming soon - Analysis report view

πŸ’¬ AI Chat Interface

Coming soon - AI chat interface

Screenshots will be updated with actual application images

πŸ›‘οΈ Security & Quality

Security Features

β€’ πŸ” TLS encryption in production
β€’ 🎫 Least-privilege tokens
β€’ πŸ“¦ Sandboxed runtimes
β€’ πŸ” SBOM & vulnerability scans
β€’ 🀐 Secret/PII redaction to LLMs

Code Quality

β€’ 🐍 Python: ruff, black, mypy
β€’ πŸ“œ TypeScript: ESLint, strict mode
β€’ πŸ§ͺ Testing: Unit, integration, E2E
β€’ πŸ“ˆ Coverage gates enforced

Documentation Governance

β€’ πŸ“ Keep a Changelog + SemVer
β€’ πŸ“š Per-module CHANGELOGs
β€’ πŸ€– CI-enforced docs updates
β€’ πŸ” OpenAPI sync with Spectral lint
β€’ πŸ“Š Optional metrics: Docs/Test Coverage, Performance, Security

🀝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Setup

Backend Development:

cd codie-backend
python3 -m pip install -r requirements.txt
# Configure optional probes via .env
export ENABLE_POSTGRES_PROBE=true
export POSTGRES_DSN=postgresql://postgres:postgres@localhost:5432/postgres
export ENABLE_REDIS_PROBE=true
export REDIS_URL=redis://localhost:6379/0

uvicorn app.main:app --reload

Health Checks:

curl http://localhost:8000/livez   # Liveness probe
curl http://localhost:8000/readyz  # Readiness probe

Frontend Development:

cd codie-frontend
npm install
npm run dev

πŸ“‹ Contribution Guidelines

β€’ πŸ”„ Fork the repository
β€’ 🌟 Create a feature branch
β€’ βœ… Add tests for new features
β€’ πŸ“ Update documentation
β€’ πŸš€ Submit a pull request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ“ž Contact & Support

πŸ’¬ Get in Touch

GitHub Issues Discussions Email

Contact Email: cyrilchaitanya@gmail.com

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors