Foxnouns.NET/STYLE.md

23 lines
No EOL
1.1 KiB
Markdown

# Code style
## C# code style
- Code should be formatted with `dotnet format` or Rider's built-in formatter.
- Variables should always be declared with their type name, unless the type is obvious from the declaration.
(For example, `var stream = new Stream()` or `var db = services.GetRequiredService<DatabaseContext>()`)
### Naming
- Service values should be named the same as the type, but camel case, if the name of the service does *not*
in a verb (i.e. a variable of type `KeyCacheService` should be named `keyCacheService`).
If the name of the service *does* end in a verb, the final "service" should be omitted
(i.e. a variable of type `UserRendererService` should be named `userRenderer`).
- Interface values should be named the same as the type, but camel case, without the leading `I`
(i.e. a variable of type `ISnowflakeGenerator` should be named `snowflakeGenerator`).
- Values of type `DatabaseContext` should always be named `db`.
There are some exceptions to this. For example Sentry's `IHub` should be named `sentry` as the name `hub` isn't clear.
## TypeScript code style
Use `prettier` for formatting the frontend code.