https://github.com/neabytelab/commit-base
Enforces commit message and must-have file checks on every PR and push to main branch.
https://github.com/neabytelab/commit-base
automation ci commit-lint conventional-commits file-check github-actions linter open-source quality-gate repository-template standardization workflow
Last synced: 3 months ago
JSON representation
Enforces commit message and must-have file checks on every PR and push to main branch.
- Host: GitHub
- URL: https://github.com/neabytelab/commit-base
- Owner: NeaByteLab
- License: mit
- Created: 2025-07-02T14:08:49.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-07-02T15:04:40.000Z (7 months ago)
- Last Synced: 2025-08-23T06:12:37.199Z (5 months ago)
- Topics: automation, ci, commit-lint, conventional-commits, file-check, github-actions, linter, open-source, quality-gate, repository-template, standardization, workflow
- Homepage: https://github.com/apps/commit-base-linter
- Size: 6.84 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Commit Base
[](https://github.com/apps/commit-base-linter)




**Commit Base** is an automated GitHub workflow that enforces commit message standards and repository quality checks for every **Pull Request** *and* **push to the main branch**.
---
## ✨ Features
* **Strict commit message linting** for every PR and push to main
* **README.md, LICENSE, and .gitignore** files are required in every branch
* **Clear error messages** for fast troubleshooting
* **Easy integration** with any GitHub repository
* **Fail-fast CI/CD**: no changes will be merged or pushed to main unless all checks pass
---
## 🚀 Quick Start
1. Copy `.github/workflows/standard-repo.yml` into your repository.
2. Ensure your project root contains `README.md`, `LICENSE`, and `.gitignore`.
3. Create a Pull Request **or** push to the main branch — Commit Base will automatically check everything!
---
## 📝 Commit Message Format
Every commit must follow this pattern:
```
(): ::
```
**Allowed types:** feat, fix, docs, refactor, chore, test, build, ci, revert
**Examples:**
* `feat(api): add payment endpoint :sparkles:`
* `fix(auth): fix token refresh bug :bug:`
* `docs(readme): update documentation :memo:`
* `revert(login): restore previous login logic :rewind:`
❗ If any commit message does not match this format, or if required files are missing, the check will fail and your PR or push will be blocked.
---
## ✅ Quality Gate Checks
* Enforces commit message format for all PRs and pushes to main
* Fails if `README.md`, `LICENSE`, or `.gitignore` is missing
* Clear error messages for fast troubleshooting
---
## 💡 Advanced Usage
* You can customize the workflow file to enforce more files or rules if needed.
* Add or edit allowed commit types and scopes by adjusting the workflow regex.
* The workflow can be extended for other branches (e.g., `dev`) by editing the trigger in the workflow YAML.
---
## 🙌 Contributing
Want to contribute? Please check out [CONTRIBUTING.md](CONTRIBUTING.md) for commit message format and PR rules.
---
## 🆘 Need Help?
- Found a bug or want a feature? [Open an issue](https://github.com/NeaByteLab/Commit-Base/issues)
---
## 📄 License
MIT © [NeaByteLab](https://github.com/NeaByteLab)