mirror of https://github.com/escalate/hugo-split-theme.git

Felix Boerner
16.29.2025 640455fa2c563b0270f51bb889aa7369845425d1
docs: add contribution guideline
1 files modified
89 ■■■■■ changed files
CONTRIBUTING.md 89 ●●●●● patch | view | raw | blame | history
CONTRIBUTING.md
@@ -1,15 +1,88 @@
# How to contribute to Split
# Contribution Guidelines
## Pull requests
First off, thanks for taking the time to contribute! ❤️ We appreciate your efforts to improve this project and make it better for everyone.
Please follow the [Conventional Commits 1.0.0 specification](https://www.conventionalcommits.org/en/v1.0.0/) to format your commit message. One commit per change is preferred.
## Table of Contents
- [How to Contribute](#how-to-contribute)
- [Reporting Bugs](#reporting-bugs)
- [Suggesting Enhancements](#suggesting-enhancements)
- [Commit Guidelines](#commit-guidelines)
- [Testing](#testing)
- [Development Environment](#development-environment)
- [Submitting Changes](#submitting-changes)
- [Code of Conduct](#code-of-conduct)
---
## How to Contribute
We encourage all kinds of contributions, from bug reports to feature requests and code improvements. Please follow the guidelines below to ensure a smooth process.
## Reporting Bugs
Before reporting a bug, please check the existing issues on [GitHub Issues](https://github.com/escalate/hugo-split-theme/issues?q=label%3Abug) to avoid duplicates. If your issue is not listed, you can report it via [GitHub Issues](https://github.com/escalate/hugo-split-theme/issues/new). A good bug report should include:
- Clear steps to reproduce the issue
- Expected vs. actual behavior
- Relevant logs or error messages
- Your environment details (OS, version, dependencies, etc.)
## Suggesting Enhancements
Before suggesting an enhancement, please check the existing issues on [GitHub Issues](https://github.com/escalate/hugo-split-theme/issues?q=label%3Aenhancement) to avoid duplicates. If your suggestion is not listed, enhancement suggestions should also be submitted through [GitHub Issues](https://github.com/escalate/hugo-split-theme/issues/new) and should include:
- A clear and descriptive title
- A detailed explanation of the suggested enhancement
- Any potential alternatives or references to similar implementations
## Commit Guidelines
All commit messages must follow the [Conventional Commits](https://www.conventionalcommits.org/) format. These messages are used to automatically generate release versions and release notes.
Format:
```
<type>(<scope>): <description>
[optional body]
[optional footer(s)]
```
Example:
```
feat(auth): add OAuth2 support
```
Allowed types: `feat`, `fix`, `build`, `chore`, `ci`, `docs`, `style`, `refactor`, `perf`, `test`
## Testing
There are two test sites under [`tests/exampleSiteWithImage`](./tests/exampleSiteWithImage) and [`tests/exampleSiteWithVideo`](tests/exampleSiteWithVideo). Please adjust those accordingly
to the changes you have made resp. check if your change didn't introduce any [regressions](https://en.wikipedia.org/wiki/Regression_testing).
All tests must pass before submitting any changes. The test suite runs via [GitHub Actions](https://github.com/escalate/hugo-split-theme/actions), and contributions will not be merged unless all tests are successful.
You can run these using the [`Makefile`](./Makefile) found at the root of this repository:
- Test suite is located in the [.github/workflows/test.yml](.github/workflows/test.yml) file.
- Add suitable tests for any new functionality or changes.
- Run tests locally before pushing changes.
`$ make hugo-server-example-site-with-image`\
`$ make hugo-server-example-site-with-video`
## Development Environment
To set up your local development environment:
1. Clone the repository.
2. Check the [README.md](README.md) for setup details.
## Submitting Changes
1. Fork the repository and create a new branch.
2. Stick to the commit guidelines.
3. Ensure all tests pass.
4. Submit a pull request (PR) with a clear description.
5. Your PR will be reviewed, and you may be asked to make adjustments before merging.
## Code of Conduct
Please follow our [Code of Conduct](CODE_OF_CONDUCT.md) to maintain a welcoming and respectful community.
Thank you for your contributions! 🚀