Branch Overview

Understanding the branching model used in the vibe coding platform.

Branch Types

Our repository uses three types of branches:

Main Branch

BranchPurpose
mainProduction - what's currently live

Working Branches

BranchPurpose
feature/*New features and changes
hotfix/*Urgent production fixes

Branch Flow

When you open a Pull Request to main, a preview deploy automatically runs with a dedicated database branch for testing.

Branch flow diagramtext
feature/new-feature
  ↓
  PR to main
  ↓
[CI checks run + Preview deploy: staging + Neon DB branch]
  ↓
[PR comment: Preview URL + Neon branch]
  ↓
  Developer approves → Merge to main
  ↓
[Auto-deploy to production + Migrations on Neon main]

When to Use Hotfix

Use hotfix/* only when production is broken and the fix cannot wait for the normal feature flow. The mechanics are the same as feature/* (branch from main, PR to main, CI must pass), but the intent is different:

BranchUse for
feature/*Everything else — new features, improvements, refactors, non-urgent bug fixes
hotfix/*Production is broken right now; fix must ship immediately

Hotfixes should contain the minimal change to restore production. No new features, no refactors, no drive-by improvements. Those belong on a separate feature/* branch afterwards.

Rules

  • ✅ Always create branches from main
  • ✅ Always use Pull Requests
  • ✅ Test on preview URL before merging
  • ❌ Never push directly to main
  • ❌ Never merge without passing CI checks

Quiz

Quiz

Which branch represents what's currently live in production?