{"id":20081880,"url":"https://github.com/jke94/soccer-crud","last_synced_at":"2026-04-02T18:53:24.548Z","repository":{"id":183015101,"uuid":"660730495","full_name":"jke94/soccer-crud","owner":"jke94","description":".NET Web Api: CRUD application (Create, Read, Update and Delete) basic operations. Focus on how to implement different technologies.","archived":false,"fork":false,"pushed_at":"2023-07-24T14:38:58.000Z","size":74,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-13T01:44:17.540Z","etag":null,"topics":["architecture","csharp","database","docker","docker-compose","dotnet","efcore","webapi"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jke94.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-30T17:42:42.000Z","updated_at":"2023-07-22T11:03:33.000Z","dependencies_parsed_at":"2024-11-13T15:44:44.300Z","dependency_job_id":"8eaff9e4-9c6e-4d52-a14d-8648731c2795","html_url":"https://github.com/jke94/soccer-crud","commit_stats":null,"previous_names":["jke94/soccer-crud"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jke94%2Fsoccer-crud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jke94%2Fsoccer-crud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jke94%2Fsoccer-crud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jke94%2Fsoccer-crud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jke94","download_url":"https://codeload.github.com/jke94/soccer-crud/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241515953,"owners_count":19975140,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["architecture","csharp","database","docker","docker-compose","dotnet","efcore","webapi"],"created_at":"2024-11-13T15:40:42.496Z","updated_at":"2025-12-30T22:56:48.641Z","avatar_url":"https://github.com/jke94.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# .NET Web API demo: A CRUD Application\n\n.NET Web Api: CRUD application (Create, Read, Update and Delete) basic operations. Focus on how to implement different technologies.\n\n## A. Development status.\n\nLegend (status implementation):\n- ✅ Implemented\n- ❔ Pending\n\nCurrent state of development:\n\n|| Status | Description | \n| :---: | :---: |     :---    |\n|1| ✅ | Database persistence (using EF Core as ORM). |\n|2| ✅ | Docker-compose to create differnt containers for database and webapi |\n|3| ✅ | Web Api Authentication |\n|4| ✅ | Web Api Authorization |\n|5| ✅ | Web Api Health checks |\n|6| ✅ | Solution with architecture layers (services with application logic, repository pattern, data access logic and data seeded for development environment) |\n|7| ❔ | FastEndpoints (pending) |\n|8| ✅ | Integration tests |\n|9| ❔ | Web Api response with batching and pagination |\n\n## B. Start SoccerCrud.WebApi (docker-compose)\n\n- Windows:\n\n```\ndocker-compose.exe -f ./docker-compose.yml -p soccer-crud up --build\n```\n\n- Linux\n```\nsudo docker compose -f ./docker-compose.yml -p soccer-crud up --build\n```\n\nAfter running the last command open the URL:\n\n- http://localhost:5112/swagger/index.html\n\n## C. Useful information.\n\n### C.1. - Example: ASP.NET 6.0 Batching and pagination\n\n- [Supercharging ASP.NET 6.0 with ODATA | CRUD | Batching | Pagination](https://dev.to/renukapatil/supercharging-aspnet-60-with-odata-crud-batching-pagination-12np)\n\n### C.2.- Example: Integration testing in .NET\n\n- [Elevate Your .NET Testing Strategy #1: WebApplicationFactory](https://goatreview.com/dotnet-testing-webapplicationfactory/?utm_content=257166118\u0026utm_medium=social\u0026utm_source=linkedin\u0026hss_channel=lcp-18055275)\n\n### C.3.- Example: Others\n- [How to Compose an ASP.NET Core Web API (.NET 6) with an MS SQL Server 2022 on Linux in Docker](https://blog.christian-schou.dk/dockerize-net-core-web-api-with-ms-sql-server/)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjke94%2Fsoccer-crud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjke94%2Fsoccer-crud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjke94%2Fsoccer-crud/lists"}