Choose Your Target
.NET MAUI
Use DrawnUi.Maui when you are building a native app for iOS, Android, MacCatalyst, or Windows.
Install:
dotnet add package DrawnUi.Maui
Blazor
Use DrawnUi.Blazor.Wasm for browser-local rendering, or DrawnUi.Blazor.Server for server-rendered DrawnUI surfaces.
Install:
dotnet add package DrawnUi.Blazor.Wasm
dotnet add package DrawnUi.Blazor.Server
DrawnUi.Net
Use DrawnUi.Net when you need platform-agnostic rendering, headless harnesses, server-side image generation, or shared-logic debugging without a UI host.
Install:
dotnet add package DrawnUi.Net
🌟 What Is DrawnUI?
DrawnUI is a rendering engine for .NET built on top of SkiaSharp that brings together a complete layout system, gesture recognition, smooth animations, and custom-drawn controls across multiple hosts, including .NET MAUI, Blazor, and platform-agnostic .NET runtimes.
Unlike traditional UI stacks that rely only on native platform widgets, DrawnUI renders everything directly to SkiaSharp-powered surfaces. This approach gives you pixel-perfect control over your app's appearance while keeping a shared rendering model that can be hosted in native apps, browser runtimes, and headless .NET workflows.
Key Architecture:
- SkiaSharp Foundation: Leverages Google's Skia graphics engine for consistent, high-performance 2D rendering
- Canvas-Based Layout: Custom layout system that positions and sizes controls on hardware-accelerated surfaces
- Gesture Engine: Multi-touch gesture recognition system with support for complex interactions
- Animation Pipeline: Smooth, performant animations using GPU acceleration and intelligent caching
- Virtual Controls: Lightweight control system without native platform overhead
Perfect for apps requiring custom UI designs, complex animations, game-like interfaces, headless rendering workflows, or pixel-perfect cross-platform consistency that traditional controls alone can't achieve.
🏃 Master Performance
- Fast App Startup for totally drawn apps
- Caching system for retained rendering
- Hardware acceleration on all platforms
- Virtual controls - no native overhead
🎨 Unleash Creativity
- Pixel-perfect cross-platform consistency
- Gesture system with multi-touch support
- 2D/3D transforms and visual effects
- Custom shaders and filters
👨💻 Familiar Yet Powerful
- MAUI/WFP-like properties for layout etc
- MAUI Shell-like navigation on canvas
- XAML + Hot Reload support
- Fluent C# syntax for code-behind UI
📔 Learn More
📖 Documentation
Complete guides and API reference
Choose Your Target →DrawnUi.Net →
Getting Started →
Blazor →
Controls Reference →
Advanced Topics →
API Reference →
By Nick Kovalsky (@taublast) and contributors