-
Notifications
You must be signed in to change notification settings - Fork 0
Contributing
Pablo R. edited this page Oct 6, 2025
·
3 revisions
Thank you for your interest in contributing to STRAP! We welcome contributions from the community.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Add tests for new functionality
- Ensure all tests pass
- Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
git clone https://github.com/murapadev/strap.git
cd strap
make
# Run tests
cd tests
gcc -I.. -L.. -o test_strap test_strap.c -lstrap
./test_strap
# Run benchmarks (optional)
make bench
./benchmarks/strap_benchFor MSVC users, run scripts\build_windows_msvc.bat from a Visual Studio Developer Command Prompt to configure, build, and test via CMake.
- Use consistent indentation (4 spaces)
- Add comments for complex logic
- Follow C99 standards where possible
- Write clear, descriptive function and variable names
We are actively seeking contributions that push the v0.4 milestone forward:
- Performance — Extend SIMD coverage (e.g., arena helpers) and keep streaming benchmarks honest.
- String utilities — Build on the split/case-insensitive helpers with arena variants or additional predicates.
- Cross-platform — Maintain the new MSVC/CMake toolchain, contribute additional CI coverage, or port shims to further Unix variants.
- Documentation — Grow the Cookbook with more recipes and keep API complexity notes up to date.
Mention the focus area in your PR description or commit message (e.g., [v0.4][perf]) so maintainers can triage faster.
Please use the bug report template when creating issues. Include as much detail as possible to help us reproduce and fix the issue.
By contributing, you agree that your contributions will be licensed under the MIT License.