Introducing Majorsilence.Forms
Moving a WinForms application off Windows-only desktop has traditionally meant a ground-up rewrite: XAML, a forced MVVM restructuring, or the web. That’s expensive, risky, and it throws away years of working business logic and UX for a codebase that mostly just needs a new coat of paint.
Majorsilence.Forms takes a different approach: it mirrors the WinForms API surface — Forms,
controls, event handlers, even *.Designer.cs code-behind — and ships a compatibility layer so
existing forms and controls move over with far less churn. The programming model doesn’t change;
where it runs does.
How it’s built
Every control is drawn with SkiaSharp into an SKSurface, on
top of a swappable host backend:
- Avalonia (default) — Windows, macOS, Linux desktop out of the box, with its own Android, iOS, and Browser (WebAssembly) targets as a path to mobile and web too.
- Uno Platform — the broadest reach: desktop, iOS, Android, and WebAssembly.
- Headless — dependency-free offscreen rendering for CI and automated tests.
The core Majorsilence.Forms assembly references no windowing toolkit at all — just SkiaSharp.
Backends are separate assemblies that plug into two small interfaces, IPlatformBackend and
IWindowBackend. That seam is what lets the exact same app target Avalonia today and Uno tomorrow
with no changes to application code. Read more in Platform backends.
Who it’s for
If you’re sitting on a WinForms codebase that’s Windows-only today and you want to keep momentum — reuse your controls, your team’s muscle memory, your business logic — instead of starting a multi-year rewrite, this is built for you.
The project is early stage: the API is stabilizing and not every WinForms corner is covered yet. It’s already a solid fit for new cross-platform line-of-business apps, and for migrating real production apps if you pin your version. See the compatibility matrix for exactly what’s implemented versus stubbed today.
Try it
dotnet new --install MajorsilenceForms.Templates
dotnet new majorsilenceforms
dotnet run
Or dig into a real application — samples/Explorer
is a full Windows Explorer clone, and samples/Outlaw
is an Outlook clone, both running unmodified on the same control set across platforms.
See Getting Started to scaffold your first app.