wiki/contributing/formatting/projects.md
2024-05-06 20:10:50 +00:00

1.5 KiB
Raw Blame History

title description published date tags editor dateCreated
Project Standards true 2024-05-06T20:10:49.577Z markdown 2024-05-05T21:22:30.441Z

Naming

All names, including but not limited to CI Actions, Respositories, and folder names inside the project, must follow lower-kebab-case except in cases where a program requires something else.

Structure

All projects should provide:

  • A devenv when applicable, preferably in the form of direnv.
    • If devenv is applicable also provide a flake.lock
  • A short summary of what the project does, as well as how to use the project in a top level README.md
    • The README should include a badge of who the repository is maintained by
  • A CONTRIBUTING.md file top level that tells people how to contribute to said project
  • A top level LICENSE file or folder of which includes the License or Licenses used in the project

Commit Messages

  • First line of the commit message should be a short (<50 chars) description of the purpose of the commit
    • First word should be one of: feat: for feature, fix: for bugfixes, or break: for breaking changes
  • First line and main message should have 1 blank newline in between them for ease of reading
  • Main messages
    • Features should have a reason to include the feature, as well as an example of the feature in use (if applicable)
    • Fixes should have what the original bug was, as well as a short summary of the steps that were required to fix it
    • Breaking Changes should have what it breaks, how it breaks it, and a short transition guide