Four packages, clear responsibilities.
The current package surface is consolidated around four architectural boundaries. Start with the runtime and providers for a normal application.
The package shape
The source tree is organized around Core → Runtime → Providers, with Extensions for optional framework integrations.
Foundgine.Core
↓
Foundgine.Runtime
↓
Foundgine.Providers
↘
Foundgine.Extensions (optional framework integrations)
Current publishable packages
| Package | Role | Use it when |
|---|---|---|
| Foundgine.Core | Provider-independent semantic model, metadata, intent, planning and execution contracts. | You build semantic models, integrations or custom providers. |
| Foundgine.Runtime | Application-facing orchestration, authorization, plan approval, routing and execution. | You are building a normal Foundgine application. |
| Foundgine.Providers | Concrete storage, AI/model, MCP, AOT and other provider integrations. | You need physical infrastructure or agent/tool integrations. |
| Foundgine.Extensions | Optional framework adapters, currently including Hot Chocolate GraphQL integration. | You need GraphQL/Hot Chocolate integration. |
Install the normal application stack
dotnet add package Foundgine.Runtime --version 2.2.1 dotnet add package Foundgine.Providers --version 2.2.1
Foundgine.Core is the provider-independent foundation and is brought in by
the higher-level packages. Add it directly when your code intentionally targets its
contracts.
Java / Maven
A Java port of the same four packages is published to Maven Central under the
io.github.cristianbarragan namespace.
<dependency> <groupId>io.github.cristianbarragan</groupId> <artifactId>foundgine-runtime</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>io.github.cristianbarragan</groupId> <artifactId>foundgine-providers</artifactId> <version>2.2.1</version> </dependency>
foundgine-core is the provider-independent foundation and is brought in
transitively by the higher-level artifacts. Add it directly when your code intentionally
targets its contracts. foundgine-extensions is available the same way for
optional framework integrations.
Optional integrations
Add Foundgine.Extensions when you expose Foundgine through Hot Chocolate
GraphQL. Choose the relevant capabilities inside Foundgine.Providers for
SQL/PostgreSQL, InMemory, AI/model tooling, MCP or retrieval integrations.
Package boundary rule
Provider-specific concerns such as SQL syntax, PostgreSQL extensions, GraphQL parsing, MCP transport and model-provider integration should not leak into the provider-independent semantic contracts.
Go deeper
Read the package READMEs in
src/
for API-level detail, or return to
Architecture to see where each package fits.