Skip to content

Latest commit

 

History

History
95 lines (64 loc) · 3.62 KB

DEVELOPMENT_WORKFLOW.md

File metadata and controls

95 lines (64 loc) · 3.62 KB

ninjasaas Development Workflow

This document outlines the development process and best practices for the ninjasaas team. As a paid developer on this project, you are expected to adhere to these guidelines to ensure efficient collaboration and high-quality code output.

Development Process

  1. Task Assignment

    • Tasks are assigned through our project management tool.
    • If you identify additional work, discuss with the team lead before creating a new task.
  2. Branching Strategy

    • Our main branch is main.
    • For each feature or bug fix, create a new branch from main.
    • Use the following naming convention:
      • Features: feature/issue-number-short-description
      • Bug fixes: bugfix/issue-number-short-description
      • Example: feature/123-add-user-authentication
  3. Coding Standards

    • Adhere to our established coding standards (refer to our internal style guide).
    • Use TypeScript for type safety.
    • Ensure your code is properly formatted using Prettier.
    • Follow React best practices and hooks guidelines.
  4. Committing Code

    • Make small, focused commits.
    • Use meaningful commit messages that explain the "why" behind changes.
    • Reference the issue number in your commit messages.
  5. Pull Requests

    • Create a Pull Request (PR) when your feature or fix is ready for review.
    • Fill out the PR template with all necessary information.
    • Request reviews from at least two team members.
    • Address all comments and suggestions from reviewers.
  6. Code Review

    • Review PRs promptly when assigned.
    • Provide constructive feedback.
    • Approve only when all concerns have been addressed.
  7. Testing

    • Write unit tests for new features and bug fixes.
    • Ensure all existing tests pass before submitting a PR.
    • Update or add integration tests as necessary.
  8. Documentation

    • Update relevant documentation with any changes.
    • Include inline comments for complex logic.
    • Update the README if there are significant changes to the project setup or workflow.
  9. Merging

    • PRs can be merged once they have two approvals and all checks pass.
    • Use "Squash and merge" to keep the main branch history clean.
  10. Deployment

    • Our CI/CD pipeline will automatically deploy changes to the staging environment after merging to main.
    • Production deployments are manually triggered after QA approval.

Best Practices

  • Keep PRs small and focused on a single issue or feature.
  • Regularly pull from main to keep your feature branches up-to-date.
  • Communicate early and often about your work, especially if you encounter blockers.
  • Use our team communication channels for discussions and questions.

Team Communication

  • Daily stand-ups at [specify time]
  • Weekly team meetings on [specify day and time]
  • Use [specify tool, e.g., Slack] for quick questions and discussions
  • Important decisions should be documented in [specify location]

Performance and Code Quality Metrics

  • We use [specify tools] for monitoring code quality and performance
  • Aim to maintain or improve our current metrics with each contribution

Continuous Learning

  • Stay updated with the latest in our tech stack
  • Share interesting findings or learnings with the team
  • Participate in code review to learn from others and share your knowledge

Remember, as a paid member of the ninjasaas development team, your contributions directly impact the success of our product. Maintain high standards in your work and collaborate effectively with your teammates.

For any questions or concerns about this workflow, please speak with your team lead or project manager.