-
Notifications
You must be signed in to change notification settings - Fork 32
Build Test and Contribute
- .NET 8 and .NET 10 SDKs
- Git
- PostgreSQL only for manual database integration work; the normal unit-test suite does not require it
git clone https://github.com/KitchenPC/core.git KitchenPC-Core
cd KitchenPC-Core
dotnet restore src/core.slnx
dotnet build src/core.slnx --configuration Release --no-restore
dotnet test src/UnitTests/UnitTests.csproj \
--configuration Release --no-build --no-restoreThe solution builds KitchenPC.Core, KitchenPC.DB, KitchenPC.Core.AspNetCore, and unit tests.
Pull requests and pushes run the build/test workflow, audit the complete NuGet dependency graph, and
create matching prerelease packages for validation.
Clone KitchenPC/Samples for:
- a database-free Terminal.Gui shopping list;
- a PostgreSQL database initializer;
- an ASP.NET Core, React, and TypeScript recipe application;
- backend and frontend tests.
The Samples README contains the current SDK, Node.js, Docker, and command details.
- Open an issue for substantial behavior changes or compatibility questions.
- Add focused tests for fixes and public behavior.
- Preserve existing context semantics unless a breaking change is intentional and documented.
- Include async and cancellation behavior when extending database APIs.
- Measure startup/memory changes that affect capability indexes or the modeler graph.
- Never commit database credentials, production snapshots, or user recipe data.
- Update the Wiki and Samples when public setup or behavior changes.
Version tags publish matching KitchenPC.Core, KitchenPC.DB, and KitchenPC.Core.AspNetCore
packages. NuGet versions are immutable, so every release needs a new version:
git tag -a v2.0.0 -m "KitchenPC 2.0.0"
git push origin v2.0.0Maintainers should confirm CI, package contents, symbols, README links, dependency versions, and all three packages on NuGet before announcing a release.
KitchenPC is MIT licensed. Runnable applications live in KitchenPC/Samples.