Novolis Docs
novolis-lab / design.md

Design

dotnetsampleslabsnovolis

Purpose

novolis-lab validates the Novolis ecosystem as package consumers: library repos publish to GitHub Packages; this repo restores those packages via PackageReference only.

Non-goals

  • Publishing NuGet packages from this repository
  • Replacing per-repo unit/integration tests
  • ProjectReference into sibling novolis-* clones (use GitHub Packages instead)
  • Local artifacts/nuget-local as the primary feed

Package source

SourceURL
GitHub Packageshttps://nuget.pkg.github.com/Novolis-Platform/index.json
nuget.orgThird-party dependencies only (packageSourceMapping in nuget.config)

Version pin: Directory.Packages.props → floating 2026.1.* for Novolis packages.

Local development

  1. Once per machine: ..\novolis-governance\scripts\configure-gpr-user-nuget.ps1 (writes %APPDATA%\NuGet\NuGet.Config from gh auth token)
  2. dotnet restore then dotnet build (Rider: normal Build Solution)

CI

Authenticate with GITHUB_TOKEN, dotnet restore from nuget.config, then build Novolis.Lab.slnx.

2D rendering dogfood

Novolis.Rendering.TwoD + Novolis.Rendering.Backends.TwoD.Silk are consumed from GitHub Packages. See two-d-simulation-gaps.md for Simulation integration and coordinate conventions.

Compose helpers

Novolis.Lab.Compose provides app-layer bridges (e.g. ViewPose → CameraSnapshot) without forbidden package references between Simulation and Rendering.

Related