Skip to content

Commit 31565a1

Browse files
committed
Initial commit
0 parents  commit 31565a1

File tree

129 files changed

+4035
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

129 files changed

+4035
-0
lines changed

.cursorrules

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# ASP.NET Core 8 Project Rules
2+
3+
- Use C# 12 language features where appropriate
4+
- Follow SOLID principles in class and interface design
5+
- Implement dependency injection for loose coupling
6+
- Use primary constructors for dependency injection in services, use cases, etc.
7+
- Use async/await for I/O-bound operations
8+
- Prefer record types for immutable data structures
9+
- Prefer controller endpoints over minimal APIs
10+
- Utilize minimal APIs for simple endpoints (when explicitly stated or when it makes sense)
11+
- Implement proper exception handling and logging
12+
- Use strongly-typed configuration with IOptions pattern
13+
- Implement proper authentication and authorization
14+
- Use Entity Framework Core for database operations
15+
- Implement unit tests for business logic
16+
- Use integration tests for API endpoints
17+
- Implement proper versioning for APIs
18+
- Implement proper caching strategies
19+
- Use middleware for cross-cutting concerns
20+
- Implement health checks for the application
21+
- Use environment-specific configuration files
22+
- Implement proper CORS policies
23+
- Use secure communication with HTTPS
24+
- Implement proper model validation
25+
- Use Swagger/OpenAPI for API documentation
26+
- Implement proper logging with structured logging
27+
- Use background services for long-running tasks
28+
- Favor explicit typing (this is very important). Only use var when evident.
29+
- Make types internal and sealed by default unless otherwise specified
30+
- Prefer Guid for identifiers unless otherwise specified
31+
- Use `is null` checks instead of `== null`. The same goes for `is not null` and `!= null`.

.dockerignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
**/.classpath
2+
**/.dockerignore
3+
**/.env
4+
**/.git
5+
**/.gitignore
6+
**/.project
7+
**/.settings
8+
**/.toolstarget
9+
**/.vs
10+
**/.vscode
11+
**/*.*proj.user
12+
**/*.dbmdl
13+
**/*.jfm
14+
**/azds.yaml
15+
**/bin
16+
**/charts
17+
**/docker-compose*
18+
**/Dockerfile*
19+
**/node_modules
20+
**/npm-debug.log
21+
**/obj
22+
**/secrets.dev.yaml
23+
**/values.dev.yaml
24+
LICENSE
25+
README.md

0 commit comments

Comments
 (0)