py2go

Solid

Migrate Python projects to idiomatic Go end-to-end. Branches into 6 project-type playbooks (CLI, TUI, HTTP backend, data pipeline, async worker, library) with the right stack defaults (Gin, pgx, sqlc, slog, etc.) and pinned library versions. Default strategy: LLM module-by-module rewrite with golden-file parity tests; --strangler for live-traffic gradual cutover; --spec-first for OpenAPI/proto-driven regeneration. Use when porting a Python codebase to Go, when scaffolding a Go rewrite of a Python service, or when generating CLAUDE.md/MIGRATION.md for an AI-driven migration.

Data & Documents 7 stars 0 forks Updated today MIT

Install

View on GitHub

Quality Score: 84/100

Stars 20%
30
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# py2go End-to-end Python → Go migration. Discover the source, lock the design, scaffold the Go module, translate file-by-file with TDD, validate behavioral parity against real data, cut over, then sweep dead code. The skill is opinionated. It enforces idiomatic Go output over Python-shaped Go, rejects dead toolchains (Grumpy/py2go transpilers), defaults to `sqlc` over GORM, defaults to `pgx` over lib/pq, defaults to `Gin` for HTTP, prefers stdlib `slog` over zap/zerolog, and treats real-data parity validation as non-optional. ## When to load which reference | Task | Open | |---|---| | Decide which Python pattern maps to which Go idiom | [references/translation-rules.md](references/translation-rules.md) | | Pick the right Go stack per project type | (playbooks - extend as needed) | | Configure strangler-fig gateway / traffic shadow | (extend as needed) | | Drive from an existing OpenAPI/proto spec | (extend as needed) | ## The 7 phases ``` discover → design → scaffold → translate → validate → cutover → cleanup ``` 1. **Discover** - two-pass: 7 discovery prompts individually → synthesize to `notes/` 2. **Design** - emit `CLAUDE.md` (translation rules) + `MIGRATION.md` (ordered file map + checkboxes) 3. **Scaffold** - `go mod init`, layout, lint (`golangci-lint`), CI, Makefile, smoke target 4. **Translate** - per-file loop: Python source → Go test first → Go impl → `go build && vet && test -race && lint` → commit 5. **Validate** - golden-file parity on real production da...

Details

Author
vanducng
Repository
vanducng/skills
Created
4 months ago
Last Updated
today
Language
HTML
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

API & Backend Listed

transform-my-repo

Feasibility analysis and migration strategy for architecture transformations: language ports (PHP to Python, Rust to Go), framework migrations (Vue or React SPA to Next.js), major version upgrades, monolith to microservices and back, database migrations, cloud/container/ serverless re-hosting, sync to event-driven, REST to GraphQL/gRPC, UI platform shifts, standalone to SaaS, and vanilla to framework. Produces an evidence-based GO/PARTIAL/NO-GO verdict with a worth-it test against the do-nothing baseline (dependency census verified in the target ecosystem, semantic gap analysis, per-module difficulty heatmap), then a migration roadmap with behavioral parity gates and rollback points. Allowed to recommend NOT migrating. Use when the user asks to migrate, port, rewrite, re-platform, upgrade a major version, split or merge services, switch databases or API paradigms, asks whether a migration is worth it, or mentions transform-my-repo or /transform-my-repo.

0 Updated 1 months ago
silkyland
API & Backend Listed

migration-playbook

Structured playbook for safely executing migrations: upgrading a major dependency version, framework migrations (e.g. React 17→18, Next.js 12→14, Vue 2→3), API deprecations, replacing one library with another, large-scale refactors touching many call sites, and database schema changes. Use this skill whenever the word "migrate", "upgrade", "deprecate", or "replace" applies to something with more than a handful of affected sites — even if it looks straightforward. Migrations that skip the inventory step consistently produce incidents from the sites nobody knew existed.

0 Updated yesterday
sardonyx0827
Data & Documents Listed

go-migrator

Writes zero-downtime, reversible, batched data migrations tested with testcontainers. Use for backfills, data transforms, column splits, and schema-level data moves.

0 Updated 1 months ago
JLugagne