Contributing¶
Types of Contributions¶
Any types of contributions are appreciated:
- Bug fixes: Help us identify and fix issues in the codebase
- New labs: Create educational content that teaches embedded security concepts
- Documentation: Improve existing documentation or add new guides
- SDK enhancements: Add new features or improve existing functionality
- Test coverage: Add tests to improve code reliability
- Build system: Enhance the CMake build configuration
- Examples: Create example code that demonstrates SDK usage
Getting Started¶
- Fork the repository: Create your own fork of the project on GitLab
- Clone your fork: Get a local copy of your fork
- Set up development environment: Follow the development setup guide
- Create a feature branch: Work on a dedicated branch for your changes
- Make your changes: Follow our coding standards and guidelines
- Test your changes: Ensure all tests pass and add new tests if needed
- Submit a merge request: Open an MR with a clear description of your changes
Quick Links¶
- Code Style Guide - Coding standards and formatting rules
- Git Workflow - Branch naming, commit messages, and MR process
- CI/CD Pipeline - Understanding the automated build and test process
- Creating Labs - Guide for contributing new labs
- API Documentation - SDK API reference
Communication Channels¶
- Issue Tracker: Report bugs or request features through GitLab issues
- Merge Requests: Submit code changes through GitLab merge requests
- Discussions: Use GitLab discussions for questions and ideas
Code of Conduct¶
We are committed to providing a welcoming and inclusive environment for all contributors. Please be respectful and professional in all interactions.
Expected Behavior¶
- Be respectful of differing viewpoints and experiences
- Give constructive feedback
- Accept constructive criticism gracefully
- Focus on what is best for the community
- Show empathy towards other community members
Unacceptable Behavior¶
- Harassment, discrimination, or offensive comments
- Personal attacks or trolling
- Public or private harassment
- Publishing others' private information without permission
- Other conduct that could reasonably be considered inappropriate
Recognition¶
We value all contributions to the project. Contributors will be recognized in:
- The project's CONTRIBUTORS file
- Release notes for significant contributions
- Documentation credits where appropriate
Questions?¶
If you have questions about contributing, please:
- Check the existing documentation
- Look through closed issues and merge requests
- Open a new issue with the "question" label
Thank you for helping make EmbSec Kit better for everyone!