Skip to content

HuggingBunny/BitBucket-Migration-Tool

Repository files navigation

Bitbucket Migration Tool — Bitbucket → GitHub Migration Manager

Part of the HuggingBunny Open Source Suite

A clickable web-based prototype for Fortune 500 teams managing Bitbucket-to-GitHub migrations during M&A events.

Status: UI mockup / prototype — fully navigable, localStorage-backed, report-exportable. Not yet wired to live APIs.


Screenshots

Dashboard

Dashboard

Wizard — Step 1: Platform Details

Platform Details

Wizard — Step 2: Data Scope

Data Scope

Wizard — Step 3: Authentication & Access

Auth & Access

Wizard — Step 4: Compliance & Security

Compliance

Wizard — Step 5: Features & UX

Features

Wizard — Step 6: Timeline & Constraints

Timeline

Wizard — Step 7: Review & Generate Plan

Review

Settings — Connections

Settings

Settings — Security

Security Settings

Logs — All Entries

Logs

Logs — Error Filter

Logs Filtered


Features

New Migration Wizard (7 steps)

Each M&A engagement gets its own named migration project. The wizard walks through:

Step Category Key Questions
1 Platform Details Source (Cloud/Server/DC + version), Target (GH.com/EC/ES + tier), GEI vs custom
2 Data Scope What to migrate (Git history, PRs, wikis, issues, labels, pipelines, LFS…), special handling (monorepos, submodules, >40 GB), repo counts
3 Auth & Access PAT / OAuth / SSH / GitHub App, SSO/SAML, bulk multi-workspace
4 Compliance & Security Audit logging, encryption, zero-data-loss, branch protection replication, user mapping strategy, DLP mode
5 Features & UX App type (CLI/Web/API/n8n), dry-run, rollback, post-migration verification, scheduling, retries, notification channels
6 Timeline & Constraints Go-live date, repos/day throughput, downtime tolerance, budget, open-source vs proprietary
7 Review & Generate Plan Full config summary with recommended tool chips, downloadable Markdown migration plan

Dashboard

  • Stats row (total / complete / in-draft)
  • Migration cards with progress bar, status badge, source → target subtitle
  • Per-card delete with confirmation

Settings

  • Connections: Bitbucket and GitHub token configuration with connection test
  • Migration Defaults: Concurrency, retries, retry delay, log level, retention
  • Notifications: Slack and Microsoft Teams webhook configuration
  • Security: Audit log, export encryption, DLP toggles
  • Advanced: Theme, date format, API timeout, debug mode, danger zone

Logs

  • Color-coded INFO / DEBUG / WARN / ERROR entries
  • Filter by level, migration name, or free-text search
  • Mock entries include realistic events: dry-run validation, user mapping, DLP blocks, rate limit errors

Tech Stack

Layer Tech
Framework React 18 + Vite
Styling Tailwind CSS v3 (dark theme)
State React useState / useCallback
Persistence localStorage (per-browser)
Build Vite — npm run build

Getting Started

# Install dependencies
npm install

# Start dev server
npm run dev
# → http://localhost:5173

# Production build
npm run build

No backend required. Everything runs in the browser.


Project Structure

src/
├── components/
│   ├── dashboard/
│   │   ├── Dashboard.jsx          # Main dashboard with stats + migration list
│   │   └── MigrationCard.jsx      # Individual migration card with progress bar
│   ├── shared/
│   │   ├── FormFields.jsx         # TextField, SelectField, RadioGroup, CheckboxGroup, etc.
│   │   └── StepIndicator.jsx      # 7-step breadcrumb bar
│   └── wizard/
│       ├── WizardShell.jsx        # Step navigation, auto-save, back/next
│       └── steps/
│           ├── Step1Platform.jsx
│           ├── Step2DataScope.jsx
│           ├── Step3Auth.jsx
│           ├── Step4Compliance.jsx
│           ├── Step5Features.jsx
│           ├── Step6Timeline.jsx
│           └── Step7Review.jsx    # Summary + report generator
├── pages/
│   ├── SettingsPage.jsx           # 5-section settings with sidebar nav
│   └── LogsPage.jsx               # Filterable log viewer
├── utils/
│   ├── storage.js                 # localStorage CRUD helpers
│   └── reportGenerator.js        # Markdown migration plan generator
└── App.jsx                        # State-machine router (no react-router)

Roadmap

  • Live Bitbucket REST API integration (workspace/repo discovery)
  • Live GitHub REST/GraphQL API integration (org validation, repo creation)
  • GEI CLI command generation from wizard answers
  • GitHub Actions Importer (Valet) pipeline conversion
  • Per-migration "Run Migration" view with live progress per repo
  • Real-time log streaming via WebSocket
  • User mapping CSV upload and validation
  • DLP/secret-scanning pre-flight check integration
  • Post-migration verification (commit/PR count diff)
  • Docker container for self-hosted deployment

Context

Built as a prototype during an M&A engagement to scope and standardize the process of migrating acquired companies off Bitbucket onto a corporate GitHub organization. Designed to handle Fortune 500 compliance requirements: audit trails, zero data loss, encryption, DLP scanning, and user identity mapping.


License

Apache 2.0

About

Bitbucket → GitHub migration wizard for M&A teams. React + Vite + Tailwind UI prototype with 7-step wizard, dashboard, settings, and log viewer.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors