framework-migration-code-migrate

You are a code migration expert specializing in transitioning codebases between frameworks, languages, versions, and platforms. Generate comprehensive migration plans, automated migration scripts, and

31,392 stars
Complexity: easy

About this skill

This skill empowers an AI agent to act as a highly specialized code migration expert. It focuses on facilitating smooth and efficient transitions of codebases by generating comprehensive migration plans, automated migration scripts, and providing best practices. The agent is proficient in handling migrations between different programming frameworks, languages, software versions, and deployment platforms, ensuring minimal disruption and adherence to modern development standards.

Best use case

Assisting developers and teams with complex code migration projects, providing expert guidance, automated tools, and detailed planning for transitioning software between diverse technical environments.

You are a code migration expert specializing in transitioning codebases between frameworks, languages, versions, and platforms. Generate comprehensive migration plans, automated migration scripts, and

A detailed, actionable migration plan, including steps, considerations, and potential challenges; Automated scripts or code snippets to facilitate parts of the migration process; Expert advice, best practices, and checklists to ensure a successful and efficient code transition.

Practical example

Example input

Migrate a Python 2.7 Flask application to Python 3.9 FastAPI. Outline the key steps, dependencies, and potential breaking changes. Generate a script to update common Flask imports to FastAPI equivalents.

Example output

**Migration Plan: Flask 2.7 to FastAPI 3.9**

**Phase 1: Analysis & Preparation**
1.  **Dependency Audit**: List all `requirements.txt` dependencies. Check Python 3.9 and FastAPI compatibility.
2.  **Codebase Scan**: Identify Python 2.7 specific syntax (e.g., `print` statements, `long` integers, `basestring`).
3.  **Authentication/Authorization**: Review current Flask-Login/Flask-Security implementations for FastAPI alternatives (e.g., FastAPI's security utilities, OAuth2).
4.  **Database ORM**: If using SQLAlchemy, ensure it's compatible with Python 3.9 and review how connections are managed in an ASGI context.
5.  **Testing Suite**: Identify existing unit/integration tests. Plan for updating them for FastAPI.

**Phase 2: Core Migration**
1.  **Python 2.7 to 3.9 Refactoring**:
    *   Automate `2to3` tool for initial conversion.
    *   Manual review for encoding issues, dictionary iteration, exceptions, etc.
2.  **Framework Transition (Flask to FastAPI)**:
    *   **Routing**: Map Flask `@app.route` decorators to FastAPI `@app.get`, `@app.post`, etc.
    *   **Request/Response Handling**: Convert `request` object access (Flask `request.args`, `request.json`) to FastAPI dependency injection (`Request`, Pydantic models).
    *   **Middleware**: Port custom Flask middleware to FastAPI `MiddlewareStack` or dependencies.
    *   **Templating**: If Jinja2 is used, it's generally compatible, but adjust setup.
    *   **Configuration**: Adapt Flask `app.config` to FastAPI's Pydantic `BaseSettings` or environment variables.
3.  **Asynchronous Nature**: Identify synchronous Flask functions and evaluate for asynchronous implementation where performance benefits are significant (e.g., I/O operations, database calls).
4.  **Error Handling**: Convert Flask error handlers to FastAPI's `ExceptionHandler`.

**Phase 3: Testing & Deployment**
1.  **Unit & Integration Tests**: Update/create tests using `pytest` and `httpx` (for FastAPI).
2.  **Performance Testing**: Benchmark FastAPI application against Flask version.
3.  **Deployment**: Update Dockerfiles, CI/CD pipelines for ASGI server (Uvicorn/Gunicorn).

**Potential Breaking Changes:**
*   Synchronous I/O operations in an async context can block the event loop.
*   Changes in URL routing behavior (e.g., trailing slashes).
*   Different error handling mechanisms.

**Automated Script (Partial Example for Imports):**
```python
# migration_script.py
import os
import re

def migrate_flask_imports(filepath):
    with open(filepath, 'r') as f:
        content = f.read()

    # Example: Migrate common Flask import patterns
    content = re.sub(r'from flask import Flask, request, jsonify',
                     r'from fastapi import FastAPI, Request, HTTPException\nfrom pydantic import BaseModel',
                     content)
    content = re.sub(r'from flask_restful import Api, Resource',
                     r'from fastapi import APIRouter',
                     content)
    # More complex replacements would involve Abstract Syntax Tree (AST) parsing

    with open(filepath, 'w') as f:
        f.write(content)

# Example usage (would iterate through project files)
# migrate_flask_imports('app/main.py')
```

When to use this skill

  • When working on code migration assistant tasks or workflows
  • When needing guidance, best practices, or checklists for code migration
  • When planning or executing transitions between different frameworks, languages, versions, or platforms

When not to use this skill

  • When the task is not directly related to code migration or requires manual intervention beyond the agent's generative and analytical capabilities
  • When looking for general code generation, debugging, or code review unrelated to a migration context

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/framework-migration-code-migrate/SKILL.md --create-dirs "https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/main/plugins/antigravity-awesome-skills-claude/skills/framework-migration-code-migrate/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/framework-migration-code-migrate/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How framework-migration-code-migrate Compares

Feature / Agentframework-migration-code-migrateStandard Approach
Platform SupportClaudeLimited / Varies
Context Awareness High Baseline
Installation ComplexityeasyN/A

Frequently Asked Questions

What does this skill do?

You are a code migration expert specializing in transitioning codebases between frameworks, languages, versions, and platforms. Generate comprehensive migration plans, automated migration scripts, and

Which AI agents support this skill?

This skill is designed for Claude.

How difficult is it to install?

The installation complexity is rated as easy. You can find the installation instructions above.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Code Migration Assistant

You are a code migration expert specializing in transitioning codebases between frameworks, languages, versions, and platforms. Generate comprehensive migration plans, automated migration scripts, and ensure smooth transitions with minimal disruption.

## Use this skill when

- Working on code migration assistant tasks or workflows
- Needing guidance, best practices, or checklists for code migration assistant

## Do not use this skill when

- The task is unrelated to code migration assistant
- You need a different domain or tool outside this scope

## Context
The user needs to migrate code from one technology stack to another, upgrade to newer versions, or transition between platforms. Focus on maintaining functionality, minimizing risk, and providing clear migration paths with rollback strategies.

## Requirements
$ARGUMENTS

## Instructions

- Clarify goals, constraints, and required inputs.
- Apply relevant best practices and validate outcomes.
- Provide actionable steps and verification.
- If detailed examples are required, open `resources/implementation-playbook.md`.

## Output Format

1. **Migration Analysis**: Comprehensive analysis of source codebase
2. **Risk Assessment**: Identified risks with mitigation strategies
3. **Migration Plan**: Phased approach with timeline and milestones
4. **Code Examples**: Automated migration scripts and transformations
5. **Testing Strategy**: Comparison tests and validation approach
6. **Rollback Plan**: Detailed procedures for safe rollback
7. **Progress Tracking**: Real-time migration monitoring
8. **Documentation**: Migration guide and runbooks

Focus on minimizing disruption, maintaining functionality, and providing clear paths for successful code migration with comprehensive testing and rollback strategies.

## Resources

- `resources/implementation-playbook.md` for detailed patterns and examples.

Related Skills

metasploit-framework

31392
from sickn33/antigravity-awesome-skills

⚠️ AUTHORIZED USE ONLY > This skill is for educational purposes or authorized security assessments only. > You must have explicit, written permission from the system owner before using this tool. > Misuse of this tool is illegal and strictly prohibited.

Security AuditingClaude

framework-migration-deps-upgrade

31392
from sickn33/antigravity-awesome-skills

You are a dependency management expert specializing in safe, incremental upgrades of project dependencies. Plan and execute dependency updates with minimal risk, proper testing, and clear migration pa

Software DevelopmentClaude

database-migrations-sql-migrations

31392
from sickn33/antigravity-awesome-skills

SQL database migrations with zero-downtime strategies for PostgreSQL, MySQL, and SQL Server. Focus on data integrity and rollback plans.

Database ManagementClaude

database-migrations-migration-observability

31392
from sickn33/antigravity-awesome-skills

Migration monitoring, CDC, and observability infrastructure

DevOps ToolsClaude

database-migration

31392
from sickn33/antigravity-awesome-skills

Master database schema and data migrations across ORMs (Sequelize, TypeORM, Prisma), including rollback strategies and zero-downtime deployments.

Database ManagementClaude

data-quality-frameworks

31392
from sickn33/antigravity-awesome-skills

Implement data quality validation with Great Expectations, dbt tests, and data contracts. Use when building data quality pipelines, implementing validation rules, or establishing data contracts.

Data EngineeringClaude

backtesting-frameworks

31355
from sickn33/antigravity-awesome-skills

Build robust, production-grade backtesting systems that avoid common pitfalls and produce reliable strategy performance estimates.

Finance & InvestingClaude

nft-standards

31392
from sickn33/antigravity-awesome-skills

Master ERC-721 and ERC-1155 NFT standards, metadata best practices, and advanced NFT features.

Web3 & BlockchainClaude

nextjs-app-router-patterns

31392
from sickn33/antigravity-awesome-skills

Comprehensive patterns for Next.js 14+ App Router architecture, Server Components, and modern full-stack React development.

Web FrameworksClaude

new-rails-project

31392
from sickn33/antigravity-awesome-skills

Create a new Rails project

Code GenerationClaude

networkx

31392
from sickn33/antigravity-awesome-skills

NetworkX is a Python package for creating, manipulating, and analyzing complex networks and graphs.

Network AnalysisClaude

network-engineer

31392
from sickn33/antigravity-awesome-skills

Expert network engineer specializing in modern cloud networking, security architectures, and performance optimization.

Network EngineeringClaude