Optional static-file server (Kestrel) for PhotinoX apps.
Use it to serve local wwwroot and ESM modules without browser restrictions (CORS, file://).
Useful when JavaScript modules cannot be loaded directly from disk.
Note:
PhotinoX.Serveris an independent fork of tryphotino/photino.NET.Server under the Apache‑2.0 license and is not affiliated with the original project or organization.
- PhotinoX - managed .NET wrapper around the native layer.
- PhotinoX.App - Application composition layer for PhotinoX desktop applications.
- PhotinoX.Native - native binaries for Windows/macOS/Linux.
- PhotinoX.Blazor - Blazor integration for native desktop apps.
- PhotinoX.Samples - sample projects showcasing common scenarios.
dotnet add package PhotinoX.ServerTargets net8.0; net9.0; net10.0.
Browsers block many operations from file:// (CORS) and refuse to load ESM modules without proper HTTP/MIME. PhotinoX.Server runs a minimal Kestrel host so your app serves wwwroot and modules over http://localhost:<port>, avoiding those restrictions.
It can serve files from the physical web root and fall back to embedded resources under Resources/<webRootFolder>.
- Minimal defaults: static files, default documents, and optional SPA fallback.
- No MVC/SignalR — focused on local dev / packaged desktop apps.
- Works on Windows, macOS, Linux with supported .NET runtimes.
dotnet restore Photino.NET.Server\PhotinoX.Server.csproj
dotnet build Photino.NET.Server\PhotinoX.Server.csproj -c Release
dotnet pack Photino.NET.Server\PhotinoX.Server.csproj -c Release -o artifactsCI: see
.github/workflows/build.yml(build + pack + upload.nupkg/.snupkg).
Issues and PRs are welcome. Keep PRs focused, minimal, and consistent with the rest of PhotinoX.
PhotinoX.Server is licensed under Apache‑2.0.
