-
Notifications
You must be signed in to change notification settings - Fork 32
Home
KitchenPC is a .NET recipe engine for applications that need structured recipes, normalized ingredients, natural-language ingredient parsing, unit conversion, shopping-list aggregation, menus, queues, recipe search, or meal modeling.
The engine contains domain and fluent APIs; it does not prescribe a user interface. Use the database-free XML context for experiments, connect the PostgreSQL adapter for a persistent application, or implement the persistence and search interfaces for another architecture.
- Follow Getting started to run KitchenPC from the sample XML snapshot.
- Read Contexts and configuration before choosing
StaticContextorDBContext. - Use PostgreSQL and database provisioning to create a persistent sample database.
- Explore the complete, runnable KitchenPC Samples.
| Goal | Guide |
|---|---|
| Search, browse, read, rate, or create recipes | Recipes and search |
Parse a dozen eggs and normalize quantities |
Ingredient parsing and units |
| Combine recipe ingredients and typed items | Shopping lists and aggregation |
| Save recipe collections for a user | Menus and recipe queues |
| Find efficient recipe combinations for a pantry | Recipe modeler |
| Host KitchenPC in ASP.NET Core | ASP.NET Core integration |
| Reduce database startup and memory | DBContext capability profiles |
| Diagnose engine or NLP behavior | Logging and diagnostics |
| Replace storage, search, identity, or NLP data | Architecture and extension points |
-
KitchenPC.Corecontains contexts, domain models, NLP, aggregation, categorization, the recipe modeler, and fluent APIs. -
KitchenPC.DBadds the NHibernate persistence adapter and built-in relational recipe search. -
KitchenPC.Core.AspNetCoreadds ASP.NET Core dependency-injection and request-identity integration without imposing a web-framework dependency on other applications. - All three packages target .NET 8 and .NET 10. The maintained samples target .NET 10.
- The project uses the MIT License.
This Wiki documents the current public API. The older KitchenPC blog articles are useful historical context, but their initialization, package, and framework details predate current releases.
KitchenPC is MIT licensed. Runnable applications live in KitchenPC/Samples.