diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index f3ac53af..00000000 --- a/.gitmodules +++ /dev/null @@ -1,4 +0,0 @@ -[submodule "gitignore"] - path = gitignore - url = https://github.com/github/gitignore.git - branch = main diff --git a/docs/source/developers/repository_standards.rst b/docs/source/developers/repository_standards.rst new file mode 100644 index 00000000..8d55d920 --- /dev/null +++ b/docs/source/developers/repository_standards.rst @@ -0,0 +1,70 @@ +Repository Standards +==================== + +This document outlines the standards and best practices for LizardByte repositories to ensure consistency, +maintainability, and quality across all projects. + +Repository Structure +-------------------- + +File Organization +~~~~~~~~~~~~~~~~~ + +All repositories should follow a consistent structure: + +.. code-block:: text + + repository-name/ + ├── .github/ + │ ├── matchers/ # custom problem matchers + │ ├── workflows/ + │ │ ├── _codeql.yml + │ │ └── _common-lint.yml + │ ├── dependabot.yml + │ └── semantic.yml + ├── branding/ # project specific branding assets + ├── docs/ # structure varies depending on the doc system used + ├── src/ # main source code + ├── tests/ # if there are tests + ├── third-party/ # location of submodules if any + ├── .gitignore + ├── LICENSE + └── README.md or README.rst + +Required Files +~~~~~~~~~~~~~~ + +Every repository must include: + +- **LICENSE**: All projects must use an appropriate license +- **README**: Primary documentation in reStructuredText (.rst) or Markdown (.md) format +- **.gitignore**: Appropriate for the project's language and framework. + See `GitHub's collection `_ for starter templates. +- **.github/**: Contains GitHub-specific configurations (workflows, issue templates, etc.) + +Naming Conventions +------------------ + +Repository Names +~~~~~~~~~~~~~~~~ + +- Be descriptive and concise +- Avoid abbreviations unless widely understood + +Branch Names +~~~~~~~~~~~~ + +- Use descriptive names with forward slashes for organization +- Format: ``type/short-description`` +- Types: ``feat/``, ``fix/``, ``docs/``, ``refactor/``: + see `Convential Commits `_ for a full list +- Examples: ``feat/user-authentication``, ``fix/memory-leak``, ``docs/api-reference`` + +File and Directory Names +~~~~~~~~~~~~~~~~~~~~~~~~ + +- Be consistent within each project +- Avoid spaces and special characters + +For questions about these standards or exceptions, +please open an issue in the `.github `_ repository or contact the maintainers. diff --git a/docs/source/toc.rst b/docs/source/toc.rst index f8ee374c..ae73de29 100644 --- a/docs/source/toc.rst +++ b/docs/source/toc.rst @@ -18,3 +18,4 @@ developers/code_of_conduct developers/contributing + developers/repository_standards diff --git a/gitignore b/gitignore deleted file mode 160000 index b19bb589..00000000 --- a/gitignore +++ /dev/null @@ -1 +0,0 @@ -Subproject commit b19bb58983cdae1e3a3fd6eafba0b9f2ec3c53ca