Thank you for contributing to our project! We appreciate your help in maintaining a high-quality codebase. Please follow the guidelines below to ensure a consistent workflow.
- Branching Strategy
- Commit Message Guidelines
- Pull Request Process
- Task Linking and ClickUp Integration
- Alternative Branch Naming
- Code Standards
- Testing and CI
- Getting Help
-
Primary Branches:
main(ormaster): Contains production-ready code.
-
Feature/Fix Branches:
- Create a new branch for every feature, bugfix, or hotfix.
- Naming Convention: Use descriptive names such as: -
feature/new-user-login-bugfix/fix-payment-error
- Structure: Follow the conventional commits format:
type(scope): subject- Example:
feat(auth): add JWT authentication
- Example:
- Commit Types:
feat: New featuresfix: Bug fixesdocs: Documentation changesstyle: Code formatting or style changesrefactor: Code restructuring without functionality changestest: Adding or updating testschore: Other maintenance tasks
- Best Practices:
- Use the imperative mood (e.g., "Add," "Fix," "Update").
- Keep subject lines concise (50–72 characters).
- Reference ClickUp tasks by including either an abbreviated task ID or a URL.
- Example:
feat(auth): add JWT authentication, relates to CU-1234
or
fix(payment): resolve timeout issue – [ClickUp Task](https://app.clickup.com/t/your-task-id)
- Example:
- Creating a PR:
- Always open a pull request from your feature or fix branch.
- Include a PR template that includes the following sections:
- Summary: A brief description of the changes introduced by this pull request.
- Related Task/Issue: A link or reference to the associated ClickUp task or GitHub issue (e.g., CU-1234 or ClickUp Task).
- Changes Made: A concise list of the primary modifications or features implemented.
- Testing Instructions: Steps to verify the changes, including any necessary test cases.
- Impact: Details on potential effects on interconnected applications or components.
- Optional Visuals:
If your PR includes UI changes or visual updates, please add annotated images or GIFs that clearly showcase the modifications.
- Review Requirements:
- Request at least one or two peer reviews depending on the change's complexity.
- Ensure all automated tests and CI checks pass before merging.
- Merging:
- Use “squash and merge” (or an agreed-upon strategy) to maintain a clean commit history.
- Referencing Tasks:
- Include ClickUp task links or abbreviated IDs in your commit messages and PR descriptions.
- This helps trace the work back to the original task.
- Workflow:
- Update the status of ClickUp tasks as work progresses.
- Ensure that any reference (abbreviated or full) in the branch name or commits corresponds to the correct task in ClickUp.
- Ensure your text editor or IDE enforces linting and formatting in your code.
- Write clean, modular, and well-documented code.
- Ensure all new features or fixes include the necessary tests and documentation.
- Run tests locally before submitting your PR.
- Ensure your changes pass all automated tests in our CI/CD pipeline.
- Write new tests for added features or bug fixes where applicable.
- If you have questions or need guidance, please reach out via our team's Slack.
- We’re here to help and appreciate your contributions!
Thank you for helping improve our projects!