Skip to content

feat: 👷 Add Conventions Verification Tools and Automation#8

Merged
nedseb merged 3 commits into
mainfrom
feature/7-automate-conventions-verification-on-the-repository
Oct 29, 2024
Merged

feat: 👷 Add Conventions Verification Tools and Automation#8
nedseb merged 3 commits into
mainfrom
feature/7-automate-conventions-verification-on-the-repository

Conversation

@nedseb
Copy link
Copy Markdown
Contributor

@nedseb nedseb commented Oct 10, 2024

This pull request implements the automated verification of conventions for the makecode-steami repository as described in issue #7. The following tools and configurations were added to ensure consistency, quality, and streamline the development process:

  1. ESLint: Added ESLint for code linting, enforcing consistent code style and identifying potential issues. Configurations were added to enforce the project's coding standards.

  2. Prettier: Integrated Prettier for code formatting, ensuring that all files are formatted uniformly according to the defined style. Configurations were added, and scripts were updated to apply formatting automatically.

  3. lint-staged: Configured lint-staged to run ESLint and Prettier on staged files before committing, ensuring that only properly formatted and linted code is committed.

  4. Commitlint: Added Commitlint to verify that commit messages follow the Conventional Commits standard, enforcing consistency in commit history.

  5. Commitizen: Integrated Commitizen to assist developers in writing properly formatted commit messages, making it easier to adhere to Conventional Commits.

  6. validate-branch-name: Configured branch name validation to enforce a naming convention inspired by GitHub Flow, ensuring clear and consistent branch names.

  7. Semantic-release: Implemented semantic-release to automate versioning and changelog generation. A new GitHub Action was added to handle the release process automatically based on Conventional Commits.

Additionally, I set up hooks that are automatically configured the first time dependencies are installed. These hooks ensure that lint-staged, Commitlint, and branch name validation are executed at appropriate stages of the development process, further reducing the chances of inconsistent or incorrect contributions.

All relevant scripts have been added to the package.json file to facilitate the usage of these tools, and the configuration files have been included to adapt these tools to our project standards.

Summary of Changes:

  • Added ESLint and configured it for linting.
  • Added Prettier for code formatting and updated related scripts.
  • Configured lint-staged to enforce linting and formatting on staged files.
  • Added Commitlint and Commitizen for commit message verification.
  • Added validate-branch-name for branch naming convention enforcement.
  • Configured semantic-release for automated versioning and changelog generation.
  • Set up automatic hooks during dependency installation.

These changes aim to automate the verification of repository conventions, ensuring a high level of code quality and reducing the need for manual intervention.

Please review these changes and let me know if there are any suggestions or improvements required.

Thank you!

@nedseb nedseb self-assigned this Oct 10, 2024
@nedseb nedseb added the enhancement New feature or request label Oct 10, 2024
@nedseb nedseb added this to the v1.0.0 milestone Oct 10, 2024
@nedseb nedseb linked an issue Oct 10, 2024 that may be closed by this pull request
@nedseb nedseb force-pushed the feature/7-automate-conventions-verification-on-the-repository branch from f5f92cf to 269e632 Compare October 11, 2024 09:10
@nedseb nedseb merged commit fa75760 into main Oct 29, 2024
@nedseb nedseb deleted the feature/7-automate-conventions-verification-on-the-repository branch October 29, 2024 13:58
@semantic-release-updater
Copy link
Copy Markdown

🎉 This PR is included in version 1.0.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Automate conventions verification on the repository

3 participants