DEV Community

nkusakula
nkusakula

Posted on

ADO to GitHub pre-migration Analyzer tool

GitHub Copilot CLI Challenge Submission

This is a submission for the GitHub Copilot CLI Challenge

What I Built

Enterprise migrations from Azure DevOps to GitHub are becoming increasingly common, but they come with a significant challenge: planning. Before running the GitHub Enterprise Importer, teams need to know how many repositories exist, how complex the pipelines are, and what blockers might slow them down. Without this information, migrations become a leap of faith.

I built the ADO Migration Readiness Analyzer to solve this problem. It's a web application that connects to your Azure DevOps organization, scans every project, repository, pipeline, and work item, and generates a comprehensive readiness report. A visual complexity meter shows whether your migration will be low, medium, or high complexity.

But it doesn't stop at assessment you can also migrate repositories directly to GitHub with just a few clicks. Select your repos, specify the target GitHub organization, and the app handles the rest using the GitHub Enterprise Importer behind the scenes. The tech stack combines Python with FastAPI for the backend and React with TailwindCSS for a polished dark-themed frontend.

Demo

GitHub Repository: github.com/nkusakula/ADO-to-GitHub-Pre-migration-assessment-tool

Screenshots of working application

ADO Migration Readiness Analyzer

Configure the connections

Scan the DevOps Environment

Assessment Dashboard

Migrate repos to GitHub

Report

My Experience with GitHub Copilot CLI

This project was built entirely with GitHub Copilot CLI, and the experience changed how I think about development. What would typically take days of research and debugging was compressed into focused sessions where Copilot CLI acted as an expert collaborator.

The journey began with brainstorming what to build. When I mentioned my experience with ADO-to-GitHub migrations, Copilot CLI immediately understood the pain point and helped outline the entire architecture. From there, it generated a Python CLI with Typer, then seamlessly pivoted to creating a FastAPI backend and React frontend when I decided to add a web UI.

The debugging moments were the most impressive. When migrations weren't working, Copilot CLI helped me identify that I was using the wrong command (gh gei vs gh ado2gh). When scans weren't completing, it discovered that WebSocket connections through Vite's proxy were unreliable and suggested HTTP polling instead. These issues could have taken hours to solve alone.

Copilot CLI is a genuine paradigm shift. It's not just autocomplete, it's a thinking partner that understands context, remembers decisions, and helps you ship faster than ever before.


Built with ❤️ and GitHub Copilot CLI

Top comments (0)