Avalonia Code Only
Cross-platform graphical interfaces in C#, all written in code, without XAML: a series of ten volumes by Roberto Arato, engineer, for those who want to build real applications that run the same way on Windows, macOS and Linux, from the first dotnet run to 3D, audio, video and deployment on the users' computers.
Volume 1The C# Languagewritten
Volume 2Desktop Interfaceswritten
Volume 32D Graphicswritten
Volume 4Advanced 2D Graphicswritten
Volume 53D Graphicsbeing written
Volume 6Advanced 3D Graphicsto be written
Volume 7Audioto be written
Volume 8Videoto be written
Volume 9Devices, Data and Networkto be written
Volume 10System, Deployment and Qualityto be written
What it is
Almost everything you find about Avalonia describes windows in XAML, a markup language. This series makes another choice: everything is C#. Windows, controls, themes, styles and animations are written in the same language as the rest of the program, and the compiler checks every line. No files to keep in step, no errors that only show up when the window opens.
- It starts from scratch. The first volume teaches the C# language from installing the SDK up to threads,
Taskandawait; windows begin in the second. - Nothing said, everything measured. When a chapter says how much something costs (a drawing, an animation, a thread), a program has measured it, and the figure shows the real number.
- The figures come from the programs. Every window in the books is drawn, or photographed, by the chapter's program while it runs: if the code changes, the figure changes with it. A few of them in the screenshots.
- Only free libraries, usable in commercial programs too: .NET, the free part of Avalonia (MIT) and, topic by topic, libraries explained with their license.
- The code is free. The examples of the books and RAVAL, the small library of the series, are under the MIT license: download them from the Download page.
Who it is for
For those who have never programmed and want to start with a serious language; for those who know another language and want C# done properly; for those who already know C# and want to move to windows without XAML. You need a computer with Windows, macOS or Linux, the .NET 10 SDK (free) and an editor: the books use Visual Studio Code.
The books are written in Italian; the English edition has begun with volumes 1 and 2, whose examples are already available in English.
The ten volumes
- The C# language: types, objects, files, JSON and XML, architectures, threads and
async. - Desktop interfaces: Avalonia in code, controls, themes, architectures and the threads of the interface.
- 2D graphics: drawing and animation with Avalonia.
- Advanced 2D graphics: Skia, Direct2D, images and projects.
- 3D graphics: 3D from scratch with OpenGL.
- Advanced 3D graphics: Vulkan and Direct3D.
- Audio: digital sound in Avalonia applications.
- Video: playing, capturing and processing video.
- Devices, data and network: peripherals, files, databases, network and native code.
- System, deployment and quality: from the developer's computer to the users'.
Volumes 1 to 4 are written, volume 5 is being written, the others have their table of contents and cover. Each volume has its own page with the chapters and their status: start from Volumes.
RAVAL, the library of the series
RAVAL (Roberto Avalonia Library) collects the fluent extensions that make an interface written in C# short and readable, hand-drawn charts, tables, dialogs, log, settings and a small JSON server. It is MIT, it has its own site, raval.aratoingegneria.it, and here you find the tutorial and guides and the class reference.