Skip to content

robertoallende/coderipple

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CodeRipple

Documentation that evolves with your code, automatically.

CodeRipple is a serverless automated code analysis system that generates comprehensive documentation and insights through GitHub webhooks. When code is committed, the system automatically clones the repository, performs AI-powered analysis using Strands and Claude 3.5 Sonnet, and delivers results via a professional web interface.

CodeRipple Architecture

πŸš€ Quick Start

1. Set up GitHub Webhook

Add a webhook to your GitHub repository:

  • Payload URL: https://1dx8rzw03f.execute-api.us-east-1.amazonaws.com/prod/webhook
  • Content type: application/json
  • Events: Just the push event
  • Active: βœ… Checked

2. Push Code

git add .
git commit -m "Trigger CodeRipple analysis"
git push

3. View Results

Your analysis will be available within minutes at: 🌐 CodeRipple Showroom

πŸŽ₯ Demo Video

CodeRipple Demo

Click the image above to watch a complete demonstration of CodeRipple's automated code analysis pipeline.

✨ Features

  • πŸ€– AI-Powered Analysis - Real code analysis using Strands framework with Claude 3.5 Sonnet
  • πŸ“Š Comprehensive Documentation - Automatic generation of architecture docs, getting started guides, and code insights
  • πŸ”„ Automated Pipeline - Triggered by GitHub webhooks, no manual intervention required
  • 🌐 Professional Delivery - Clean web interface with direct download capabilities
  • πŸ“ˆ Event Monitoring - Complete system observability and logging
  • πŸ’° Cost Effective - Serverless architecture, pay only for usage (typically <$3/month)

πŸ—οΈ Architecture

CodeRipple uses a professional team metaphor with specialized AWS services:

Core Components

  • πŸšͺ Gatekeeper (API Gateway) - Webhook endpoint security and validation
  • πŸ‘‹ Receptionist (Lambda) - Webhook processing and repository cloning
  • πŸ“ž Telephonist (EventBridge) - Event routing and coordination
  • πŸ”¬ Analyst (Lambda) - AI-powered code analysis using Strands + Claude 3.5 Sonnet
  • πŸ—„οΈ Drawer (S3 Private) - Private document storage and retrieval
  • 🚚 Deliverer (Lambda) - Analysis results packaging and delivery
  • πŸͺ Showroom (S3 Public) - Public documentation delivery via website
  • πŸ“‹ Hermes (Lambda) - Event logging and status tracking
  • πŸ—ƒοΈ Cabinet (S3 Public) - Public event logs and pipeline monitoring

Event Flow

GitHub Webhook β†’ Gatekeeper β†’ Receptionist β†’ Telephonist
                                    ↓
Drawer ← Repository Clone    EventBridge β†’ Analyst
  ↓                                         ↓
Analysis Storage ← AI Analysis ← Strands + Claude 3.5
  ↓
Deliverer β†’ Package Results β†’ Showroom β†’ Public Website
  ↓
Hermes β†’ Event Logging β†’ Cabinet β†’ System Monitoring

πŸ› οΈ Technology Stack

  • AWS Lambda - Serverless compute (Python 3.12)
  • AWS EventBridge - Event routing and service coordination
  • AWS S3 - Repository storage and public website hosting
  • AWS API Gateway - GitHub webhook endpoint
  • AWS Bedrock + Strands + Claude 3.5 Sonnet - Real AI-powered code analysis
  • Docsify - Documentation website framework
  • GitHub API - Repository operations and webhook processing

πŸ“¦ Deployment

CodeRipple is designed for easy deployment with individual component scripts:

Prerequisites

  • AWS CLI configured with appropriate permissions
  • Python 3.12+
  • Bash shell environment

Core Infrastructure

# 1. Deploy API Gateway webhook endpoint
cd api_gatekeeper && ./deploy.sh

# 2. Deploy EventBridge event routing
cd eventbridge_telephonist && ./deploy.sh

# 3. Deploy event logging system
cd lambda_hermes && ./deploy.sh
cd s3_cabinet && ./deploy.sh

# 4. Deploy repository storage
cd s3_drawer && ./deploy-bucket.sh

# 5. Deploy repository processor
cd lambda_receptionist && ./deploy.sh

Analysis Engine

# Deploy AI analysis engine with Lambda Layers
cd lambda_analyst

# 1. Deploy Strands dependencies layer (60MB)
./deploy-layer-s3.sh

# 2. Deploy analysis function with layer
./deploy-with-layer.sh

Results Delivery

# 1. Deploy public website
cd s3_showroom && ./deploy.sh

# 2. Deploy results packaging system
cd lambda_deliverer && ./deploy.sh

Integration

Each deployment script:

  • Creates necessary IAM roles and policies
  • Configures AWS services with proper settings
  • Sets up EventBridge triggers and targets
  • Provides deployment verification and testing
  • Saves deployment artifacts for integration

πŸ’‘ Key Innovations

Lambda Layers for Large Dependencies

CodeRipple solves the challenge of deploying large AI dependencies (173MB) in AWS Lambda through a sophisticated layer architecture:

  • Strands Dependencies: 60MB layer with platform-targeted installation
  • Function Code: Lightweight 33KB deployment package
  • Cross-Platform Compatibility: macOS ARM64 development β†’ Linux x86_64 production

Shared Assets Architecture

Consistent branding and maintainability across multiple S3 websites:

  • Shared CSS/Images/Fonts: Single source of truth for branding
  • Template System: Parameterized HTML generation
  • Multi-Site Deployment: Showroom and Cabinet with consistent styling

Event-Driven Architecture

Complete observability and coordination through EventBridge:

  • Component Task Logging: Every operation tracked and logged
  • Event Routing: Decoupled service communication
  • Error Handling: Comprehensive retry and dead letter queue strategies

πŸ” Monitoring

System Observability

CloudWatch Integration

  • Lambda function metrics and logs
  • S3 bucket access patterns
  • EventBridge event volumes
  • API Gateway request tracking

πŸ§ͺ Sample Analyses

CodeRipple includes 12 professional sample analyses showcasing AI capabilities:

  • amazon-ecs-agent - Container orchestration analysis
  • aws-cdk - Infrastructure as code documentation
  • django - Web framework architecture insights
  • react - Frontend library analysis
  • linux - Kernel code analysis
  • And 7 more...

View samples at: CodeRipple Showroom

πŸ“š Documentation

Development Documentation

  • Development Log - Complete development history using Micromanaged Driven Development (MDD)
  • Architecture Decisions - Key technical decisions and rationale
  • Cost Analysis - Detailed cost breakdown and optimization strategies
  • TODO - Future improvements and known limitations

Component Documentation

Each component includes detailed README files with:

  • Deployment instructions
  • Configuration options
  • Testing procedures
  • Integration points

🀝 Contributing

CodeRipple follows Micromanaged Driven Development (MDD) with systematic documentation:

  1. Fork the repository
  2. Create feature branch following MDD unit structure
  3. Document implementation in dev_log/ directory
  4. Test thoroughly with deployment scripts
  5. Submit pull request with comprehensive documentation

πŸ“„ License

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

πŸ™ Acknowledgments

  • Strands Framework - AI-powered code analysis engine
  • AWS Serverless - Scalable cloud infrastructure
  • Claude 3.5 Sonnet - Advanced language model for code analysis
  • Docsify - Documentation website framework

CodeRipple - Documentation that evolves with your code, automatically.

🌐 Live Demo: CodeRipple Showroom

About

AI agents that automatically create living documentation from your code changes.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published