We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the code
- Submitting a fix
- Proposing new features
Obviously...
Mostly. But pretty much exclusively for non-maintainers. You'll need to fork the repo in order to submit a pull request. Here are the basic steps:
- Fork the repo and create your branch from
main. - If you've added code that should be tested, add tests.
- If you've changed APIs, update the documentation.
- Ensure the test suite passes.
- Make sure your code lints.
- Issue that pull request!
You can just add a pull request out of the blue if you want, but it's much better etiquette (and more likely to be accepted) if you open a new issue or comment in an existing issue stating you'd like to make a pull request.
Look for issues marked with 'help wanted' to find good places to start contributing.
In short, when you submit code changes, your submissions are understood to be under the same MIT License that covers this project.
Report bugs using Github's issues
We use GitHub issues to track public bugs. Report a bug by opening a new issue; it's that easy!
The project docs are a Hugo site located in the /docs folder and are published to ardalis.github.io/CleanArchitecture automatically when changes to docs/** are merged to main.
All content lives under docs/content/. Each file is standard Markdown with a small YAML front matter block at the top:
---
title: "My New Page"
weight: 25
---
Page content here.title— the label shown in the left navigation.weight— controls the sort order; lower numbers appear higher in the nav.
To add a new section (a collapsible group in the nav), create a subdirectory and add an _index.md inside it using the same front matter pattern.
Existing content sections for reference:
| Path | Purpose |
|---|---|
docs/content/getting-started.md |
Installation and first steps |
docs/content/design-decisions.md |
Goals and design rationale |
docs/content/minimal-clean-architecture.md |
Minimal template overview |
docs/content/architecture-decisions/ |
ADR records |
docs/content/migration-guides/ |
Version upgrade guides |
Prerequisites: Hugo extended v0.158 or higher.
-
Clone the theme alongside the docs (mirrors what CI does):
git clone https://github.com/alex-shpak/hugo-book docs/themes/hugo-book
-
Start the local dev server from the
docs/directory:cd docs hugo server --minify -
Open http://localhost:1313/CleanArchitecture/ in your browser. The server hot-reloads on file saves.
The generated docs/public/ output directory is gitignored — do not commit it.
If you don't have the time or expertise to contribute code, you can still support us by sponsoring.