Code After Coffee Documentation
This wiki is built to document contribution guidelines and any tools/resources that would be usefull for the community
Sections
-
Github Guidelines: This section is dedicated to introducing Github and describing basic tools/functions of the site in relation to contributing to community projects.
- Organization: Description of the Github organization and how to join
- Fork: Forking a repository which creates a copy of the exisiting repo under your own Github account
- Branches: Description of the desired branching structure for organization/forked repos
- Issues: Guidelines for creating and responding to Github issues
- PRs: Guidelines for creating and addressing pull requests in Github
- Actions: Guidelines for managing Github actions in addition to commonly used actions
- Projects: Guidelines for interacting with and managing Github projects
- Rulesets: How to manage rulesets for repositories and what rules should be included
- SSH: How to set up a SSH key for use when interacting with Github
- GPG: How to set up a GPG key for signing commits
-
Git Commands: This section is dedicated to outlining useful git commands that will come up in the development process
- remote: Manage connections between local git and remote repositories (Github)
- branch: Manage branches in local git
- fetch: Fetching changes from remote repositories
- pull: Pulling changes from remote repositories to local repositories
- push: Pushing changes from local repositories to remote repositories
- rebase: Managing commit history of local repositories
- cherry-pick: Adding specific pre-commited changes to local repositories
-
Git Commit Guidelines: This section goes over the community's git commiting guidelines. The community follows the Conventional Commits guidelines found here: https://www.conventionalcommits.org/en/v1.0.0/
- feat: Implemented a new feature
- fix: Fixed an existing feature
- perf: Changes to the code that aim to improve the performance
- refactor: Refactoring existing code where no changes to behavior are made
- docs: Documentation about existing code
- chore: Chores related to the management of the code
- build: Changes to the build process of the code
- ci: Changes to the CI/CD of the code
- style: Changes to the styling of code
- test: Testing of exisiting code
- Breaking Change (!): If new changes breaks existing application infrastructure
-
Code Stylers/Linters: This section goes over code stylers and linters that have been configured and set up for the community
- Eclipse: Code styler for the Eclipse IDE
- ESLint: Code linter for Javascript/Typescript
-
Development Operations: This section covers different development operation related resources and documentation
- Domain: Domains owned by the community and what applications are pointed to by those domains
- Development VM: Virtual machines hosted by the community and what purpose they serve
-
Useful Tools/Technologies: This section covers useful tools and technologies that the community can learn/use during the development of projects
- Docker: Overview of docker which allows for the containerization of applications to improve sharability and distribution