Frontend
1.0.0
1.0.0
  • Introduction
  • Project Guidelines
    • INTRODUCTION
    • PROJECT SETUP
      • Frameworks
      • Static type checking
      • Code Quality Tools
      • Enforcing good practices
      • Testing
      • Code versioning flow
      • Continuous Integration & Delivery
      • Isolated component development
    • EFFECTIVE AND CONSISTENT WORKFLOW
      • Code structure, architecture
      • Code versioning and review flow
      • Testing
      • Continuous Integration & Delivery
      • Dependency checking
      • Project Management Tools
      • Communication
    • THE QUALITY OUTPUT
      • Great UX/UI
        • Design & User Experience
        • SEO, SMO
      • Accessibility
        • Introduction
        • Why a11y?
        • Fundamentals
        • A11y in STRV
          • Share Knowledge
          • Project Life Cycle
          • A11y culture
      • Performance
        • Bundle Size
        • Deployment
        • Audits & Reports
      • Stability
        • Documentation
        • Analytics & Error Tracking
        • Quality Assurance
      • Security
    • FINAL WORDS
    • ACKNOWLEDGEMENT
Powered by GitBook
On this page
  • Code reviews
  • Commit history

Was this helpful?

  1. Project Guidelines
  2. EFFECTIVE AND CONSISTENT WORKFLOW

Code versioning and review flow

PreviousCode structure, architectureNextTesting

Last updated 5 years ago

Was this helpful?

GitHub comes with nice code versioning flows. Usually, this is happening through Pull Requests, which could be reviewed by other colleagues on the project.

There are a lot of git guidelines available online. Take a look at .

Contribution guide to the project, issue templates or pull request templates take everything to another level. Yet another thing to consider.

Code reviews

Proper and regular code reviews improve the quality of the whole project. And even though it is extra work, it actually saves a lot of time.

  • Fewer bugs and risks are getting merged to the codebase.

  • It helps to understand the project more and be more familiar with it.

  • Code reviews are great for learning.

  • On GitHub, you can enforce code reviews in the branch settings.

  • You should automate some common checks by using a Continuous Integration service. For example, you should run here linters and tests. Also, consider using . The point is to automate as much as possible. And let human-reviewer think about the harder problems.

Commit history

  • It’s important to have a readable commit history.

  • A commit should always address just one logical part.

  • Don’t do “Fix typo” and similar commits, but rather amend them to the previous ones.

  • Write meaningful commit messages and enforce them by using commitlint.

  • Consider using the “Squash and merge” pull request option on GitHub. It leads to a beautiful history and, consequently, better readability. You can also easily revert newly merged changes because they are represented by one single commit.

  • Use commitlint, textlint or other handy packages from

STRV Guidelines
https://github.com/danger/danger-js
https://google.github.io/eng-practices/review/reviewer/
code-quality-tools