Skip to content

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

  1. Fork the repository: Create your own fork of the project on GitLab
  2. Clone your fork: Get a local copy of your fork
  3. Set up development environment: Follow the development setup guide
  4. Create a feature branch: Work on a dedicated branch for your changes
  5. Make your changes: Follow our coding standards and guidelines
  6. Test your changes: Ensure all tests pass and add new tests if needed
  7. Submit a merge request: Open an MR with a clear description of your changes

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:

  1. Check the existing documentation
  2. Look through closed issues and merge requests
  3. Open a new issue with the "question" label

Thank you for helping make EmbSec Kit better for everyone!