Thank you for considering contributing to server-scripts-cli! This document outlines the process for contributing to this project.
# 1. Fork the repository on GitHub
# 2. Clone your fork
git clone https://github.com/YOUR_USERNAME/server-scripts-cli
cd server-scripts-cli
# 3. Create a feature branch
git checkout -b feature/your-feature-name
# 4. Make your changes
# 5. Test your changes
./ssc.sh list
./ssc.sh validate
# 6. Commit with semantic versioning in mind
git add .
git commit -m "Add: Feature description"
# 7. Push to your fork
git push origin feature/your-feature-name
# 8. Open a Pull Request on GitHub- Bash Scripts: Follow existing patterns (
set -uo pipefail, error handling, readonly variables) - Indentation: 4 spaces (no tabs)
- Functions: Use
snake_casenaming - Variables: Use
SCREAMING_SNAKE_CASEfor constants,snake_casefor locals - Comments: Document complex logic, use
# =====section separators
Before submitting a PR, ensure:
-
./ssc.sh listworks correctly -
./ssc.sh validatepasses - Script follows shellcheck recommendations
- Documentation is updated (if adding features)
- Update
README.mdif adding user-facing features - Update
docs/MANIFEST_SCHEMA.mdif changing YAML schema - Add entries to
CHANGELOG.md(Keep a Changelog format)
Use clear, descriptive commit messages:
Add: New feature description
Fix: Bug fix description
Docs: Documentation update
Refactor: Code improvement without behavior change
Test: Add or update tests
Use the Bug Report template and include:
- Steps to reproduce
- Expected vs. actual behavior
- Environment (Bash version, OS, yq version)
- Relevant logs or error messages
Use the Feature Request template and describe:
- Use case and motivation
- Proposed solution
- Alternative solutions considered
This project adheres to the Contributor Covenant Code of Conduct. By participating, you are expected to uphold this code.
- Fork & Branch: Create a feature branch from
main - Develop: Make your changes with clear commits
- Test: Ensure all tests pass and functionality works
- Document: Update relevant documentation
- Submit: Open a PR with a clear description
- Review: Address feedback from maintainers
- Merge: Once approved, your PR will be merged
By contributing, you agree that your contributions will be licensed under the MIT License.
Your contributions help make server-scripts-cli better for everyone. We appreciate your time and effort!
Questions? Open an issue or reach out to @fidpa.