Modern .NET for realtime systems, graphics, games, and studios.
Composable libraries · GitHub Packages continuous builds · Desktop apps that ship
Platform-oriented .NET libraries — progressive complexity, no forced mega-engine. Physics and simulation stay headless; Raylib and Avalonia compose at the edges; apps install from NuGet.
GitHub Packages (continuous builds, 2026.1.*):
https://nuget.pkg.github.com/Novolis-Platform/index.json
# once per machine (writes user NuGet.config credentials)
pwsh -File ../novolis-governance/scripts/configure-gpr-user-nuget.ps1
dotnet add package Novolis.Raylib
dotnet add package Novolis.Audio
dotnet add package Novolis.Messaging.ChannelsPublic nuget.org releases ship when a GitHub Release is published (requires org secret NUGET_API_KEY). Catalog: org packages · novolis-registry · install CLI.
Portfolio docs: https://novolis-platform.github.io/.github/
| Repo | Why it matters | |
|---|---|---|
| novolis-raylib | Raylib 6 + raygui for modern .NET | |
| novolis-audio | SFX, TTS voice, and live music | |
| novolis-physics | Force-first textbook physics | |
| novolis-avalonia | UI chrome for studios and games | |
| novolis-apps | Desktop products + installers | |
| novolis-install | novolis CLI installer |
| Stage | Trigger | What happens |
|---|---|---|
| Build | PR to main (pull-request.yml) |
Restore, build, test — no publish |
| Package | Push to main (merge.yml) |
Pack YEAR.MAJOR.MINOR.{run} → GitHub Packages |
| Release | GitHub Release published (release.yml) |
Same version shape → nuget.org + release assets |
Versions are four-part numeric only (2026.1.1.351) — see nuget-versioning.md. Desktop apps (novolis-apps) ship zip/installers via GitHub Releases instead of nuget.org.
CI badges are live GitHub Actions SVGs. Package versions and the merge-success count below are snapshotted at regen (2026-08-09 11:29 UTC).
Merge successes (at last regen): 40 / 44. NuGet packages on GPR: 318 · org packages · novolis-registry.
Repos that publish to GitHub Packages (top 3 package IDs + count).
| Repository | PR | Merge | Packages |
|---|---|---|---|
novolis-agent |
— | Novolis.Agent.Core Novolis.Agent.Surface Novolis.Agent.Testing |
|
novolis-analyzers |
— | Novolis.Analyzers.AutoMapper Novolis.Analyzers.CodeLength Novolis.Analyzers.Conventions +2 more → packages |
|
novolis-aspire |
— | Novolis.Aspire.Hosting.Signoz |
|
novolis-astro |
— | Novolis.Astro.Abstractions Novolis.Astro.Assessment Novolis.Astro.Catalog +4 more → packages |
|
novolis-audio |
Novolis.Audio Novolis.Audio.Abstractions Novolis.Audio.Analysis +40 more → packages |
||
novolis-avalonia |
Novolis.Avalonia.3D Novolis.Avalonia.Agent Novolis.Avalonia.Audio +27 more → packages |
||
novolis-cad |
— | Novolis.Cad.Primitives Novolis.Cad.SceneBridge Novolis.Modeling.Import +1 more → packages |
|
novolis-civics |
— | Novolis.Civics.Agents Novolis.Civics.Core Novolis.Civics.EconomyBridge +1 more → packages |
|
novolis-codegen |
— | Novolis.CodeGen.Bindings Novolis.CodeGen.Pipeline Novolis.CodeGen.Reflection +5 more → packages |
|
novolis-commands |
— | Novolis.Commands.Abstractions Novolis.Commands.DependencyInjection Novolis.Commands.Engine +3 more → packages |
|
novolis-documents |
— | Novolis.Documents Novolis.Documents.Layout Novolis.Documents.Skia |
|
novolis-economy |
— | Novolis.Economy Novolis.Economy.Accounting Novolis.Economy.Agents +7 more → packages |
|
novolis-gaming |
— | Novolis.Game.Humanoid Novolis.Game.Identity Novolis.Game.MenuFlows +7 more → packages |
|
novolis-geopolitics |
— | Novolis.Geopolitics.Conflict Novolis.Geopolitics.Core Novolis.Geopolitics.Diplomacy +4 more → packages |
|
novolis-install |
Novolis.Install |
||
novolis-io |
Novolis.IO.Git Novolis.IO.GitHub Novolis.IO.Indexing +5 more → packages |
||
novolis-machinelearning |
— | Novolis.MachineLearning.Algorithms Novolis.MachineLearning.AutoMl Novolis.MachineLearning.Core +3 more → packages |
|
novolis-manuscript |
Novolis.Manuscript Novolis.Manuscript.Cli Novolis.Manuscript.Editorial +8 more → packages |
||
novolis-markup |
— | Novolis.Markup.Html Novolis.Markup.Manuscript Novolis.Markup.Markdown +6 more → packages |
|
novolis-math |
— | Novolis.Math.Arrays Novolis.Math.Geometry Novolis.Math.Measure +1 more → packages |
|
novolis-messaging |
— | Novolis.Messaging Novolis.Messaging.Abstractions Novolis.Messaging.Channels +7 more → packages |
|
novolis-msbuild |
— | Novolis.MSBuild.LibraryReference |
|
novolis-physics |
— | Novolis.Physics Novolis.Physics.Abstractions Novolis.Physics.Aerodynamics +9 more → packages |
|
novolis-raylib |
— | Novolis.Raylib Novolis.Raylib.Abstractions Novolis.Raylib.Bindings +12 more → packages |
|
novolis-rendering |
— | Novolis.Rendering Novolis.Rendering.Abstractions Novolis.Rendering.Compile +14 more → packages |
|
novolis-security |
— | Novolis.Security.Encryption Novolis.Security.HaveIBeenPwned Novolis.Security.PasswordHashing +1 more → packages |
|
novolis-ship |
— | Novolis.Ship.Primitives Novolis.Ship.Topology Novolis.Ship.Validation |
|
novolis-simulation |
— | Novolis.Simulation Novolis.Simulation.Abstractions Novolis.Simulation.Humanoid +14 more → packages |
|
novolis-smoketest |
— | Novolis.TemplateSmokeTest |
|
novolis-storage |
— | Novolis.IO.Workspace Novolis.Storage.Abstractions Novolis.Storage.InMemory +4 more → packages |
|
novolis-templates |
— | Novolis.Templates |
|
novolis-testing |
— | Novolis.Testing.Logging Novolis.Testing.ServiceBus Novolis.Testing.TestBases +3 more → packages |
|
novolis-tools |
Novolis.Tools.Cli Novolis.Tools.Coverage Novolis.Tools.Docs +6 more → packages |
||
novolis-transports |
Novolis.Transports.Http Novolis.Transports.LocalIpc Novolis.Transports.Torrent +7 more → packages |
||
novolis-video |
— | Novolis.Video.Edit Novolis.Video.Rtc Novolis.Video.Capture.Windows +1 more → packages |
|
novolis-workspaces |
— | Novolis.Snapshots.Abstractions Novolis.Snapshots.FileSystem Novolis.Snapshots.Json +11 more → packages |
Repos without NuGet packages and without a release.yml workflow (infra, templates, dogfooding, etc.).
| Repository | PR | Merge |
|---|---|---|
.github |
— | — |
novolis-dogfooding |
— | |
novolis-governance |
— | — |
novolis-registry |
— | |
novolis-workflows |
— | — |
Repos with release.yml that do not publish NuGet packages (apps / installers).
| Repository | Release |
|---|---|
novolis-apps |
|
novolis-os |
|
novolis-template-dotnet |
— |
Novolis aims to feel modern but not trendy, platform-oriented rather than product-locked, and pleasant in both OSS and enterprise conversations. Progressive complexity, composable architecture, modern .NET patterns, low ceremony — no forced mega-engine or mandatory ECS.
| Asset | Use |
|---|---|
brand/logo-brand-transparent.svg |
Full lockup (mark + wordmark + tagline) |
brand/logo-icon.svg / favicon.svg |
Iconographic mark only (packages, apps, favicon) |
brand/logo-icon.png |
NuGet PackageIcon (icon.png in each repo) |
brand/logo-icon.ico |
Windows ApplicationIcon (icon.ico in each repo) |
Regenerator: brand/generate-pixel-outlines.cs. Sync into sibling repos: scripts/Sync-BrandIcons.ps1.
| Resource | Link |
|---|---|
| Contribution policy | novolis-governance |
| Security policy | SECURITY.md |
| CI & package publishing | nuget-setup.md |
| Release & versioning | release-policy.md |
| Reusable workflows | novolis-workflows |
| Package registry | novolis-registry |
| Roadmap | roadmap.md |
| Governance | novolis-governance |
| .NET repo template | novolis-template-dotnet |
| Org landing refresh | org-landing-status.md |