Skip to content

Commit 892ff54

Browse files
committed
docs: add welcoming contribution guidelines
1 parent b131ff0 commit 892ff54

1 file changed

Lines changed: 89 additions & 0 deletions

File tree

‎CONTRIBUTING.md‎

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
# Contributing to UltimateAuth
2+
3+
Thank you for your interest in UltimateAuth! 💜
4+
5+
UltimateAuth is a community-first, open-source authentication and authorization framework for modern .NET applications. Contributions of every size are welcome: questions, bug reports, ideas, documentation, examples, tests, code, and thoughtful feedback.
6+
7+
**You do not need to be an expert to contribute.** Our goal is to make collaboration approachable, constructive, and enjoyable.
8+
9+
## Join the community
10+
11+
- [GitHub Issues](https://github.com/CodeBeamOrg/UltimateAuth/issues) — report bugs and suggest improvements.
12+
- [GitHub Discussions](https://github.com/CodeBeamOrg/UltimateAuth/discussions) — ask questions and explore ideas, when discussions are enabled.
13+
- [Discord](https://discord.gg/QscA86dXSR) — meet contributors, ask for help, and share feedback.
14+
15+
If you are unsure where to start, open an issue or say hello on Discord.
16+
17+
## Reporting bugs and suggesting features
18+
19+
A good title and a short, clear description are usually enough to get started. Templates are helpful, but not mandatory.
20+
21+
For bug reports, please share whatever you can:
22+
23+
- What you expected to happen and what actually happened.
24+
- The UltimateAuth version, .NET version, and relevant client/runtime, if known.
25+
- A small reproduction, code snippet, logs, or steps to reproduce, if available.
26+
27+
For feature ideas, describe the problem you want to solve and how you imagine the feature helping users.
28+
29+
**Please do not post passwords, tokens, private keys, personal data, or sensitive logs.** If you believe you found a security vulnerability, use the private process in [SECURITY.md](SECURITY.md) rather than opening a public issue.
30+
31+
## Pull requests
32+
33+
We welcome pull requests, including small fixes and improvements.
34+
35+
1. Fork the repository and create a branch for your work.
36+
2. Make a focused change, with tests when practical.
37+
3. Open a pull request targeting the **`dev`** branch.
38+
4. Use a descriptive title and explain what changed and why.
39+
40+
There is no strict pull request format. If a change fixes an issue, feel free to link it. Draft pull requests and work-in-progress discussions are welcome.
41+
42+
For substantial architectural changes or new authentication behavior, opening an issue first is encouraged so we can align on the approach and avoid wasted effort. This is a recommendation, not a barrier to proposing ideas.
43+
44+
Maintainers may suggest revisions, request tests, or help refine the approach. Reviews are intended to improve the contribution, not discourage contributors.
45+
46+
## Building and testing
47+
48+
The repository contains the `UltimateAuth.slnx` solution and unit/integration test projects.
49+
50+
From the repository root, you can try:
51+
52+
```bash
53+
dotnet restore UltimateAuth.slnx
54+
dotnet build UltimateAuth.slnx
55+
dotnet test UltimateAuth.slnx
56+
```
57+
58+
Some integration tests or samples may require additional configuration or infrastructure. If a command fails or you cannot run a test, simply mention it in your pull request. You do not need a perfect local environment to start contributing.
59+
60+
## Architecture and security
61+
62+
UltimateAuth separates authentication, authorization, sessions, credentials, domain responsibilities, and client/runtime adaptation.
63+
64+
Before making a substantial architectural or security-sensitive change, please read:
65+
66+
- [Canonical architecture](.ultimateauth/architecture.md)
67+
- [AI-assisted development guardrails](.ultimateauth/ai-guardrails.md), particularly if you use coding agents
68+
69+
These documents guide architectural decisions; they are not intended to prevent questions, alternative proposals, or constructive discussion. If you believe an architectural rule should change, raise the proposal for maintainer review rather than silently bypassing it.
70+
71+
Security-sensitive changes may need more thorough review and regression tests than routine changes.
72+
73+
## Using AI-assisted tools
74+
75+
AI tools are welcome as development aids. Contributors remain responsible for understanding their changes, reviewing generated code, and accurately describing what was tested.
76+
77+
Please do not submit unreviewed generated changes or claim that tests were run when they were not.
78+
79+
## Licensing
80+
81+
UltimateAuth is licensed under the [Apache License 2.0](LICENSE.txt). By contributing, you agree that your submitted contributions may be incorporated into the project under its applicable contribution and licensing terms.
82+
83+
If a separate contributor agreement is introduced, its requirements will be documented before enforcement.
84+
85+
## A welcoming community
86+
87+
Be respectful, assume good intentions, and help others learn. Different experience levels and perspectives make the project better.
88+
89+
**Thank you for helping build UltimateAuth.**

0 commit comments

Comments
 (0)