mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 00:26:07 +02:00
Refactor and update various components of EchoHub.Server
- Updated launchSettings.json for consistency. - Refactored FileValidationHelper to improve image validation logic. - Enhanced ServerDirectoryService for better connection handling and user count updates. - Improved DatabaseSetup for legacy database handling and seeding default channels. - Refined FirstRunSetup to ensure JWT secret generation. - Removed appsettings.Development.json as it is no longer needed. - Updated EchoHub.Tests project file for consistency. - Added unit tests for FileValidationHelper and PresenceTracker with improved assertions. - Updated ValidationConstantsTests to ensure regex validations are correct. - Cleaned up solution file formatting for better readability.
This commit is contained in:
+101
-101
@@ -1,101 +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 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:
|
||||
|
||||
```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`.
|
||||
# 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 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:
|
||||
|
||||
```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`.
|
||||
|
||||
Reference in New Issue
Block a user