feat: Add documentation files including Code of Conduct, Contributing guidelines, and Security policy; update Markdown linting configuration and scripts

This commit is contained in:
HueByte
2026-02-19 09:53:06 +01:00
parent 653f25b70b
commit ff9c264f4b
17 changed files with 305 additions and 21 deletions
+101
View File
@@ -0,0 +1,101 @@
# Contributing to EchoHub
Thanks for your interest in contributing — EchoHub aims to stay lightweight, terminal-first, and self-hosted.
## Quick start (dev)
### Prerequisites
- .NET 10 SDK
### Build
```bash
dotnet build src/EchoHub.slnx
```
### Test
```bash
dotnet test src/EchoHub.slnx
```
### Run (local)
Server:
```bash
dotnet run --project src/EchoHub.Server
```
Client:
```bash
dotnet run --project src/EchoHub.Client
```
## What to work on
- Check open issues (especially `good first issue` / `help wanted` if present)
- Docs fixes in `docs/` are always welcome
- Tests: `src/EchoHub.Tests/`
If youre proposing a larger change, open an issue first so we can align on approach.
## Code style & expectations
- Keep PRs focused (small and reviewable)
- Prefer clear naming over cleverness
- Add/adjust tests for bug fixes when its practical
- Avoid committing secrets (JWT secrets, tokens, connection strings)
## Docs
This repo uses DocFX for the site in `docs/`.
To build docs locally you typically need the assemblies built in Release first:
```bash
dotnet build src/EchoHub.slnx --configuration Release
```
Then run DocFX:
```bash
docfx docs/docfx.json
```
## Markdown lint
CI lints Markdown. Locally:
- On Linux/macOS (or Windows with Git Bash/WSL):
```bash
./scripts/lint-markdown.sh
```
- Anywhere with Node.js installed:
```bash
npx --yes markdownlint-cli2
```
## Pull requests
- Fill out the PR template
- Ensure `dotnet test src/EchoHub.slnx` is green
- Mention any behavioral changes (client UX, auth, uploads)
## Commit messages
Any consistent style is fine; descriptive subjects help reviews.
Examples:
- `fix(server): validate image magic bytes`
- `feat(client): add /servers improvements`
- `docs: clarify getting started`
## Reporting security issues
Please do **not** file public issues for security problems. See `SECURITY.md`.