Skip to content

Latest commit

 

History

History
101 lines (64 loc) · 1.85 KB

File metadata and controls

101 lines (64 loc) · 1.85 KB

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

dotnet build src/EchoHub.slnx

Test

dotnet test src/EchoHub.slnx

Run (local)

Server:

dotnet run --project src/EchoHub.Server

Client:

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 you’re 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 it’s 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:

dotnet build src/EchoHub.slnx --configuration Release

Then run DocFX:

docfx docs/docfx.json

Markdown lint

CI lints Markdown. Locally:

  • On Linux/macOS (or Windows with Git Bash/WSL):
./scripts/lint-markdown.sh
  • Anywhere with Node.js installed:
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.