Building from Source¶
Prerequisites¶
- .NET 10 SDK
- Git
Clone and Build¶
All three projects (NexusLabs.Narnia.Core, NexusLabs.Narnia.McpServer, NexusLabs.Narnia.Web) build together via the solution file narnia.slnx.
Run Tests¶
Tests live in tests/NexusLabs.Narnia.Core.Tests/ and use xUnit v3.
Publish — MCP Server (NativeAOT)¶
The MCP server supports NativeAOT publishing for a self-contained, dependency-free executable:
| Platform | Runtime Identifier (RID) |
|---|---|
| Windows x64 | win-x64 |
| Linux x64 | linux-x64 |
| Linux ARM64 | linux-arm64 |
| macOS x64 (Intel) | osx-x64 |
| macOS ARM64 (Apple Silicon) | osx-arm64 |
The published binary ends up in src/NexusLabs.Narnia.McpServer/bin/Release/net10.0/<RID>/publish/.
Publish — Web UI¶
The web app is a standard ASP.NET Core Blazor Static SSR app. After publishing, run the output executable directly — it starts the Kestrel web server on port 5244.
Development Mode¶
Run both components simultaneously during development: