Contributing
Contributions are welcome! Please follow these guidelines when working on Nice TV.
Branch Naming
Use descriptive branch names with one of these prefixes:
feature/<feature-name>— New featuresfix/<bug-description>— Bug fixesrefactor/<refactor-description>— Code refactoringdocs/<documentation-change>— Documentation updateschore/<maintenance-task>— Maintenance tasks
Examples:
- feature/category-browse-frontpage
- fix/chat-reconnect-loop
Commit Messages
Use Conventional Commits format:
feat:for new featuresfix:for bug fixesdocs:for documentationstyle:for formattingrefactor:for code refactoringtest:for testschore:for maintenance
Example:
Pre-commit Checklist
Before committing, run:
Verify .env is not staged and no secrets are committed.
Code Standards
- Follow the Dart style guide
- Use
dart format .before committing - Run
flutter analyzeto check for issues - Prefer
constconstructors where possible - Use
finalfor immutable variables - Use
latefor late-initialized variables - One class per file (recommended)
- Keep
data/andpresentation/separate
Pull Requests
- Push your branch to GitHub
- Open a PR with a clear description of the change
- Ensure all checks pass (lint, tests, build)
- Request review from a maintainer
Development Tips
- Use
flutter runfor debug mode with hot reload - Use Flutter Inspector in your IDE for widget tree inspection
- Profile with
flutter run --profilefor performance issues - Check for unnecessary rebuilds with Flutter Inspector