Quack-The-Code is an AI-powered legacy code modernization platform that transforms outdated programming languages into modern equivalents. The system leverages specialized AI agents to analyze and convert legacy code while preserving functionality and logic.
-
Multi-Language Support: Convert from legacy languages including:
- COBOL
- Fortran
- Pascal
- Assembly
-
Target Modern Languages:
- Python
- C++
- Java
- C
-
Intelligent Conversion: Maintains original program logic and behavior
-
Specialized Agents: Each legacy language has a dedicated AI specialist
-
Comprehensive Logging: Detailed logs for tracking conversion process
-
Clone the repository:
git clone https://github.com/yourusername/Quack-The-Code.git cd Quack-The-Code -
Install dependencies:
pip install -r requirements.txt
-
Set up environment variables:
cp .env.example .env # Edit .env with your API keys and configuration
Quack-The-Code/
├── config/
│ └── agents.yaml # Agent configuration - Q Generated
├── legacy_code/
│ └── uploads/ # Original legacy code files - Runtime Generated
├── modernized_code/
│ └── output/ # Generated modern code files - Runtime Generated
├── .env # Environment variables - Update it
├── config.json # Application configuration
├── crew.py # Main application file - Q Generated (Extension)
├── q-config.json # Q configuration - Q Generated
|__ readme.md # End to end flow - Q Generated
|__ frontend
| |__streamlit_app.py # Frontend done by me
└── requirements.txt # Dependencies - Q Generated
- Input Processing: The system reads the legacy code file and identifies the source language.
- Agent Selection: Based on the source language, a specialized AI agent is selected.
- Code Analysis: The agent analyzes the legacy code structure, logic, and functionality.
- Conversion: The code is transformed into the target modern language.
- Output Generation: The modernized code is saved to the output directory.
Quack-The-Code uses the CrewAI framework to orchestrate specialized AI agents:
- COBOL Specialist: Expert in modernizing COBOL systems
- Fortran Specialist: Specialized in scientific computing code conversion
- Pascal Specialist: Focused on Pascal's structured programming paradigms
- Assembly Expert: Skilled in translating low-level operations to high-level abstractions
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.