Skip to Content
Contributing

Contributing

Local Setup

git clone https://github.com/Serenity-Code-Project/fe-serenity-code-landing-page.git cd fe-serenity-code-landing-page bun install bun dev

Branching Strategy

Three branch levels are used to separate development stages:

BranchPurpose
internal/Experiments, proof of concept, and early testing
dev/Active development — all features merge here first
prod/Stable production-ready code

Branch Naming

For a single task in a scope:

internal/{scope}

For parallel tasks within the same scope:

internal/{scope}/{context}

Examples

internal/auth internal/auth/login internal/auth/register

Merge Order

internal/{scope}/{context} → internal/{scope} → dev/ → prod/

Commit Format

<type>(<scope>): <issue id> - <short description>

Variants

Solo ticket:

feat(auth): SER-75 - add login endpoint

Multiple tickets:

fix(user): SER-95, SER-96, and SER-97 - resolve profile update issue

No ticket (minor fix or out-of-ticket request):

chore(config): update environment variable names

Types

TypeWhen to use
featNew feature
fixBug fix
refactorCode restructure without behavior change
choreMaintenance, dependency updates
docsDocumentation changes
styleFormatting only, no logic change
testAdding or fixing tests

Rules

  • Use imperative tense: add, fix, update, remove
  • Lowercase only
  • No trailing period

PR Flow

  1. Receive a ticket → create branch internal/{scope} (or internal/{scope}/{context} for parallel work)
  2. Make your changes on that branch
  3. Run rtk bun fl and rtk bun type-check — both must pass
  4. Open PR from internal/dev/
  5. After review & approval, merge to dev/
  6. Open PR from dev/prod/ when ready for release
  7. Quality Gate must pass before merging to prod/