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 devBranching Strategy
Three branch levels are used to separate development stages:
| Branch | Purpose |
|---|---|
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/registerMerge 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 endpointMultiple tickets:
fix(user): SER-95, SER-96, and SER-97 - resolve profile update issueNo ticket (minor fix or out-of-ticket request):
chore(config): update environment variable namesTypes
| Type | When to use |
|---|---|
feat | New feature |
fix | Bug fix |
refactor | Code restructure without behavior change |
chore | Maintenance, dependency updates |
docs | Documentation changes |
style | Formatting only, no logic change |
test | Adding or fixing tests |
Rules
- Use imperative tense:
add,fix,update,remove - Lowercase only
- No trailing period
PR Flow
- Receive a ticket → create branch
internal/{scope}(orinternal/{scope}/{context}for parallel work) - Make your changes on that branch
- Run
rtk bun flandrtk bun type-check— both must pass - Open PR from
internal/→dev/ - After review & approval, merge to
dev/ - Open PR from
dev/→prod/when ready for release - Quality Gate must pass before merging to
prod/