Bikin Aplikasi Desktop Cross-Platform dengan Avalonia UI dan C#
Salah satu proyek freelance saya butuh aplikasi desktop yang harus jalan di Windows, macOS, dan Linux tanpa nulis tiga codebase terpisah. Setelah coba beberapa opsi, saya akhirnya pilih Avalonia UI dengan C#.
Avalonia itu mirip WPF dari sisi XAML dan data binding, jadi kalau kamu sudah biasa dengan .NET, learning curve-nya nggak terlalu curam. Bedanya, Avalonia beneran cross-platform — satu codebase, render sendiri di tiap OS pakai Skia, jadi tampilannya konsisten tanpa perlu native control per platform.
Yang saya suka: hot reload buat preview UI, styling mirip CSS lewat XAML, dan komunitasnya aktif walau nggak sebesar Electron atau Flutter. Kekurangannya, dokumentasi buat kasus-kasus advanced (custom rendering, native interop) masih agak tipis dibanding opsi yang lebih mainstream.
Buat kasus saya — aplikasi desktop yang butuh akses low-level (koneksi VPN, security reporting) sambil tetap punya UI yang enak dipakai — Avalonia + C# ternyata pas. Nggak butuh runtime browser kayak Electron, dan performanya jauh lebih ringan.
Kalau kamu lagi cari alternatif WPF yang beneran cross-platform, worth dicoba.