SaraRasoulian/WebAPI-Sample-DotNet-7
56.1
Adequate · 21 September 2026
350
lines of production code
C#
primary language
4
measurements over time
What this system is
Features
Add Education API endpoints and ASP.NET Core startup configuration
Introduced a new EducationsController exposing standard CRUD operations (GET, POST, PUT, DELETE) for education resources, wired to an IEducationService. The application startup in Program.cs registers the EF Core DbContext (PostgreSQL via Npgsql) and dependency injection for the service and unit of work. Configuration files (appsettings.json) define the default database connection string, and launchSettings.json sets up HTTP/HTTPS development profiles with Swagger enabled.
src/WebApi · medium confidence
Added Docker support for local development
Developers can now run the application, PostgreSQL, and pgAdmin4 locally using Docker Compose. The update introduces a Dockerfile, docker-compose.yml, and .dockerignore file, allowing users to start the full stack with a single command and access the API at localhost:5000, the database at localhost:5433, and the pgAdmin interface at localhost:8080.
(repo-wide) · high confidence
Added domain entities and repository interfaces for education records
Introduced the core domain model for education data, including base classes for entity identification (EntityBase) and auditability (AuditableEntityBase). Added the Education entity with fields for degree, field of study, school, and description. Also added the IEducationRepository interface defining standard CRUD operations (GetAll, GetById, Add, Update, Delete) for the Education entity.
src/Domain · high confidence
Added education management capabilities
Introduced a new domain for managing education records. This includes an EducationDto for data transfer, an IEducationService interface and its implementation (EducationService) that handles CRUD operations (GetAll, GetById, Add, Update, Delete) using a Unit of Work pattern, and an IUnitOfWork interface defining the repository access and persistence methods.
src/Application · high confidence
Initial database schema and data seeding for Education entity
The application now includes the initial database schema for the Education entity, featuring a new SampleDbContext, an EF Core configuration for the Educations table, and a migration to create the table. The database is seeded with a sample record containing a Bachelor's degree in Software engineering. Additionally, a new EducationRepository and Unit of Work implementation are introduced to handle data access and transaction management for this entity.
src/Infrastructure · high confidence
Test coverage
Added unit tests for the Education service and Educations controller
Added unit tests for the \EducationService\ in \Application.Tests\, covering the \GetAll\, \GetById\, \Add\, \Update\, and \Delete\ operations. Additionally, added unit tests for the \EducationsController\ in \WebApi.Tests\, verifying the behavior of the \Get\, \Post\, \Put\, and \Delete\ endpoints, including error handling and validation scenarios.
tests · high confidence
Dependencies
Initial .NET 7.0 project structure and dependencies
The repository now includes .csproj files for the Application, Domain, Infrastructure, and WebApi layers, all targeting .NET 7.0. The Infrastructure layer adds Entity Framework Core 7.0.10 (including SQL Server and PostgreSQL/Npgsql providers), while the WebApi layer integrates Swashbuckle for OpenAPI documentation and health checks. Test projects for Application and WebApi are also added, utilizing xUnit 2.4.2, FakeItEasy 7.4.0, and related testing utilities.
(dependencies) · medium confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 58 → 56 (-1.6)
- Rubric changed (rubric-2026.08.18 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 86 → 86 (-0.0)
- Architecture 81 → 81 (+0.0)
- Maturity 63 → 63 (+0.0)
- Readiness 42 → 38 (-3.9)
- Security 78 → 79 (+1.7)
Resolved (9)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Medium CVE: Azure.Identity 1.6.0
- Medium CVE: Azure.Identity 1.6.0
- No exposed public API
- redundant comment (src/WebApi/Program.cs)
- redundant comment (src/WebApi/Program.cs)
- redundant comment (tests/Application.Tests/EducationServiceTests.cs)
- single-maintainer — knowledge-concentration (bus factor) risk
New (16)
- Documentation: no architecture or design documentation (README.md)
- End-of-life runtime: .NET net7.0
- High IaC: WD-COMPOSE-0002 (docker-compose.yml)
- High IaC: WD-COMPOSE-0002 (docker-compose.yml)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Medium IaC: WD-DOCKER-0003 (Dockerfile)
- Medium IaC: WD-DOCKER-0003 (Dockerfile)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- Medium: security finding (details withheld)
- No dependency advisory monitoring
- Workflow token permissions not restricted
- redundant comment (src/Infrastructure/DbContexts/SampleDbContext.cs)
- redundant comment (src/WebApi/Program.cs)
- redundant comment (src/WebApi/Program.cs)
API surface
- Unchanged — 5 HTTP endpoints
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
SaraRasoulian/WebAPI-Sample-DotNet-7 was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 21 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 8d531252a7c2b48bcca190af7b18b297f0627eb7 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-28e75b8e3254.