When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.
Please note we have a Team Norms section discussing code of conduct, please follow it in all your interactions with the project.
See README.md.
- Ensure any install or build dependencies are removed before the end of the layer when doing a build.
- Update the README.md with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations and container parameters.
- You may merge the Pull Request into the
main
branch once you have the permission of other developers.
Below are a set of rules each team member must follow to establish a productive and positive environment.
Teams are ideally co-located in the same room or space while they work for fast interactions and rapid team building... or work harder to make sure collaboration takes place with dedicated chat rooms, video conferencing and conference calls.
Team members are expected to display a right-minded attitude to ensure a positive environment.
Examples of behavior that contributes to creating a positive environment include:
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
When a team member needs help due to extenuating circumstances, it is important reach out and notify all other team members as soon as possible, preferably a few days before any deadlines.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to these values, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, unproductive, threatening, offensive, or harmful.
Sprints will take place over a period of two weeks, after which all maintainers will discuss their contributions in the Sprint Review.
Daily standup times will be flexible according to times when all team members have an open schedule. Each standup will take approximately 30 minutes, and all maintainers are expected to present synchronously. Members will not cover for other members who do not participate.
A member who makes no progress on a task for two standups or more in a row will be reported to management.
- All team members will use VS Code and a designated linter to standardize code formatting.
- Use hyphen in file names.
- Do: UX-DESIGN.md
- Don't: UX_DESIGN.md
- Don't over-engineer. Write minimum code to get things working end to end, only then iterate to improve.
- Code for each task and spike must be peer-reviewed and pass tests before merging into the
main
branch of code.
- Code for each task and spike must be peer-reviewed and pass tests before merging into the
- Always push working code, if you break the pipeline/build then fix it.
- Make granular and small commits, per feature or per bug fix.
- Provide descriptive commit messages.
- Write self documenting code. Use descriptive variable and function names. Avoid unnecessary name shortening.
- Don't leave dead/commented out code behind. If you see such code, delete it.
- Write automated tests to cover critical integration points and functionality (once you learn how to do that).
These listed rules and regulations are crucial for long-term progress, so it is important that all members follow everything as a baseline requirement. Everyone has their own unique qualities and offerings. Thus, any activity beyond these rules are allowed and encouraged as long as they are ethical and pragmatic. At the end of the day, we want all contributors to feel included, motivated and gratified. Happy coding!