Thank you for your interest in improving this training course! This document provides guidelines for contributing.
We welcome contributions in the following areas:
- Fix typos, grammatical errors, or unclear explanations
- Add missing information or examples
- Update outdated content or links
- Improve existing exercises or add new ones
- Add new sections or topics
- Create additional templates or examples
- Develop supplementary materials
- Translate content to other languages
- Report broken links or missing resources
- Identify errors in code examples or instructions
- Flag outdated information
- Propose new features or improvements
- Share ideas for better organization
- Suggest additional resources
- Navigate to the file you want to edit on GitHub
- Click the pencil icon (Edit this file)
- Make your changes directly in the browser
- Scroll down to "Commit changes"
- Add a descriptive commit message
- Good: "Fix typo in Exercise 3 instructions"
- Bad: "Update file"
- Select "Create a new branch for this commit and start a pull request"
- Click "Propose changes"
- Fill in the pull request template (see below)
- Submit the pull request
-
Open an issue first to discuss your proposed changes
- Describe what you want to add or change
- Explain why it would be valuable
- Wait for feedback before starting work
-
Fork the repository (if you're not a collaborator)
- Click "Fork" button on GitHub
- Clone your fork to your computer (optional)
-
Create a new branch for your changes
- Name it descriptively:
add-copilot-sectionorfix-exercise-4
- Name it descriptively:
-
Make your changes
- Follow the style guidelines below
- Test any exercises or instructions
- Update table of contents if needed
-
Commit your changes with clear messages
- Use present tense: "Add" not "Added"
- Be specific about what changed
-
Open a pull request
- Fill in the template completely
- Reference any related issues
- Request review from maintainers
-
Address feedback
- Respond to comments
- Make requested changes
- Ask questions if unclear
-
Celebrate! 🎉
- Once approved and merged, your contribution is live!
- Use clear, simple language - Write for non-technical audiences
- Be concise - Get to the point quickly
- Use active voice - "Click the button" not "The button should be clicked"
- Include examples - Show, don't just tell
- Be encouraging - Assume good intent and support learners
- Use Markdown for all documentation
- Follow existing structure - Match the style of surrounding content
- Use headings consistently
#for main titles##for major sections###for subsections
- Use code blocks for commands, code, or file contents
- Specify language:
```bashor```yaml
- Specify language:
- Use tables for structured information
- Use lists for steps or multiple items
- Use bold for emphasis:
**important** - Use italics for terms:
*repository* - Use links to reference other sections or external resources
- Use lowercase letters
- Separate words with hyphens:
meeting-notes-template.md - Use descriptive names:
github-security-guide.mdnotguide2.md - Use
.mdextension for Markdown files
- Use clear, high-resolution images
- Annotate images to highlight key elements
- Save in
images/folder - Use descriptive filenames:
create-issue-button.png - Include alt text in markdown:

Before submitting:
- Read through your changes for clarity
- Check spelling and grammar
- Verify all links work
- Ensure formatting displays correctly
- Follow the steps yourself
- Verify all instructions are accurate
- Check that expected outcomes match reality
- Test on a fresh account if possible
- Test the code or workflow
- Verify it works as described
- Check for any errors or warnings
- Document any prerequisites
When opening a pull request, please include:
## Summary
[Brief description of what this PR does]
## Type of Change
- [ ] Bug fix (typo, broken link, error correction)
- [ ] Content improvement (clarification, better examples)
- [ ] New content (new section, exercise, or resource)
- [ ] Documentation update
- [ ] Other (please describe)
## Changes Made
- [Change 1]
- [Change 2]
- [Change 3]
## Related Issues
Closes #[issue number]
Related to #[issue number]
## Testing
[Describe how you tested these changes]
## Screenshots (if applicable)
[Add screenshots to show visual changes]
## Checklist
- [ ] I have read the contributing guidelines
- [ ] My changes follow the style guidelines
- [ ] I have tested my changes
- [ ] I have updated relevant documentation
- [ ] My commit messages are clear and descriptive- Accuracy - Is the information correct?
- Clarity - Is it easy to understand?
- Completeness - Is anything missing?
- Consistency - Does it match the existing style?
- Value - Does it improve the training?
- Small fixes: Usually reviewed within 2-3 days
- Larger changes: May take up to a week
- If no response after a week, feel free to ping reviewers
- At least one approval from a maintainer
- All comments addressed or discussed
- No merge conflicts
- Passes any automated checks
When creating issues, use these labels:
| Label | When to Use |
|---|---|
bug |
Something is broken or incorrect |
documentation |
Related to documentation improvements |
enhancement |
New feature or improvement request |
question |
Questions about the training |
good first issue |
Good for new contributors |
help wanted |
Extra attention needed |
duplicate |
Issue already exists |
wontfix |
Will not be addressed |
- Be respectful - Treat everyone with respect and kindness
- Be constructive - Provide helpful feedback
- Be inclusive - Welcome diverse perspectives
- Be patient - Remember everyone is learning
- Be professional - Keep discussions focused and productive
- Harassment or discrimination
- Trolling or insulting comments
- Personal or political attacks
- Publishing others' private information
- Other unprofessional conduct
If you experience or witness unacceptable behavior:
- Contact the repository maintainers
- Provide details of the incident
- We will investigate and take appropriate action
- Issues - Bug reports, feature requests, discussions
- Pull Requests - Proposed changes
- Discussions - General questions and conversations
- GitHub Discussions - Best for general questions
- Issues - For specific problems or suggestions
- Pull Request Comments - For feedback on proposed changes
New to contributing on GitHub? Check out:
- GitHub Skills - Introduction to GitHub
- How to Contribute to Open Source
- First Contributions
- Our own Hands-On Workshop
Contributors are recognized in several ways:
- Listed in the repository's contributors page
- Mentioned in release notes for significant contributions
- Acknowledged in the README for major contributions
- Eternal gratitude from learners who benefit from your work! 🌟
If you have questions about contributing:
- Check if your question is answered in this document
- Search existing issues and discussions
- Open a new discussion in the Q&A category
- Contact the maintainers directly if needed
By contributing to this project, you agree that your contributions will be licensed under the same MIT License that covers the project.
Thank you for helping make this training better for everyone! 🚀
Last Updated: October 2025
Maintained by: Training Team