wiki/contributing/formatting/projects.md

31 lines
1.5 KiB
Markdown
Raw Normal View History

---
title: Project Standards
description:
published: true
date: 2024-05-06T20:10:49.577Z
tags:
editor: markdown
dateCreated: 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