skills/repository-efcore/SKILL.md
Implement data access using Entity Framework Core with the IRepository<T> pattern. Covers DbContext setup, LINQ queries, migrations, change tracking, SQLite/SQL Server/PostgreSQL/Cosmos DB EF providers, and DI registration. Use when: creating EF Core repositories, configuring DbContext, writing migrations, or switching database providers.
npx skillsauth add congiuluc/my-awesome-copilot repository-efcoreInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
IRepository<T> interface or EF Core implementationsrepository-dapper skill for those casesstring Id property — see domain modelsIRepository<T> in CoreAsNoTracking() for read-only queries — avoids change tracking overheadConfigureAwait(false) in all async repository methodsCancellationToken in repository methodsIReadOnlyList<T> for collection returns — prevent mutation by callersDbContext scoped per request; CosmosClient as singletonDbContext outside Infrastructure layertools
Build VS Code extensions with TypeScript. Covers extension anatomy, activation events, commands, tree views, webview panels, language features, testing, and publishing. Use when: creating a new VS Code extension, adding commands/views/providers, building webview UIs, implementing language server features, testing extensions, or packaging for the marketplace.
development
Track implementations, features, bugs, and releases in a versioning document. Use when: adding a commit, completing a feature, fixing a bug, or preparing a release. Automatically updates CHANGELOG.md following Keep a Changelog format and Semantic Versioning.
development
Write frontend tests using Vitest and React Testing Library. Use when: testing React components, hooks, user interactions, form submissions, accessibility assertions, or mocking API services.
development
Write Angular frontend tests using Jasmine, Karma, and Angular TestBed. Use when: testing Angular components, services, pipes, directives, user interactions, form submissions, accessibility assertions, or mocking HTTP services.