An intelligent, AI-powered tool designed to automate the migration of legacy codebases to modern frameworks (specifically Next.js + TypeScript). Built for the DeveloperWeek 2026 Hackathon.
- Deep Repository Analysis: Scans GitHub repositories to understand structure, dependencies, and architecture.
- Architecture Visualization: Generates visual diagrams of legacy system architecture using Gemini 3.0 Pro Image (Nano Banana).
- Automated Migration: Converts legacy code (PHP, Vue, old React, etc.) into modern Next.js 16 (App Router) + TypeScript components using Gemini 3.0 Pro.
- Project Scaffolding: Automatically generates a full project structure including configuration files using Gemini 3.0 Flash.
- Detailed Reports: Provides a migration summary with modernization scores, test coverage estimates, and key improvements.
- Zip Download: Download the fully migrated project as a zip file, ready to run.
- Frontend: React 19, Vite, Tailwind CSS, Bun
- AI Models: Google Gemini 3.0 Pro (Analysis) & Gemini 3.0 Flash (Code Gen)
- Visualization: Mermaid.js (via Gemini)
- State Management: React Context / Hooks
Run the test suite with:
bun run testThis project uses Vitest for unit and component testing.
- Bun (v1.0 or higher)
- A Google Gemini API Key (Get one here)
-
Clone the repository:
git clone https://github.com/lassestilvang/dustoff.git cd dustoff -
Install dependencies:
bun install
-
Set up environment variables: Create a
.env.localfile in the root directory and add your API key. The key is used server-side via/api/geminiand is not exposed to the browser bundle:GEMINI_API_KEY=your_api_key_here
-
Run the development server:
bun dev
The app will be available at http://localhost:3000.
- Enter the GitHub URL of the repository you want to migrate.
- Click "Analyze Repo" to start the scanning process.
- Review the generated architecture diagram and analysis summary.
- Click "Build Next.js App" to start the code generation.
- Watch as files are generated in real-time in the file explorer.
- Once complete, click "Download Project" to get your migrated codebase.
We welcome contributions! Please see our Contributing Guidelines for more details.
This project is licensed under the MIT License - see the LICENSE file for details.


