This skeleton provides a strong yet simple foundation, making it easy to start building robust Bash scripts with a well-structured architecture.
-
Dependency Management: Uses bashdep for managing dependencies.
- Install with:
install-dependencies.sh
- Install with:
-
Testing: Integrates bashunit for testing.
- Tests in:
tests/
- Tests in:
-
Source Structure: Organize functions in different files.
- Source in:
src/
- Source in:
-
Entry Point: Ready to handle arguments and options.
- Script:
./entry-point
- Script:
-
Build System: Bundle your project into a single executable.
- Use:
./build.sh
- Use:
-
CI: Automates linting, static analysis, and tests on commits/PRs.
- Workflows in:
.github/workflows/
- Workflows in:
-
Pre-commit Hook: Optional hook for running tests, linter, and analysis.
- Script:
bin/pre-commit
- Script:
-
Makefile: Simplifies project management with basic commands.
- Available in:
Makefile
- Available in:
This skeleton is the result of building other projects like:
- bashunit: https://github.com/TypedDevs/bashunit
- create-pr: https://github.com/Chemaclass/create-pr
- bashdep: https://github.com/Chemaclass/bashdep
- release: https://github.com/Purpose-Green/release
Suggestions, ideas and PRs are more than welcome here! Please, Check out our CONTRIBUTING.md guidelines.