跨平台的 .NET UI框架

Benedikt Schroeder f609c9c5d9 Cleanup 7 years ago
.github 3514171338 Added PR template. 7 years ago
.ncrunch 589b76e9cd Moved render tests for each platform to their own directory. 7 years ago
build 262e583f5c Moved <LangVersion> to SharedVersion.props. 7 years ago
samples e021c66e63 Merge branch 'master' into feature/password-box 7 years ago
scripts 16b99ae3aa add skia to replace scripts so skia issues can be debugged from user apps. 7 years ago
src f609c9c5d9 Cleanup 7 years ago
tests f609c9c5d9 Cleanup 7 years ago
tools f102ef9c1f Updated cake to latest version. 7 years ago
.editorconfig 0835ae6dda Added editorconfig 10 years ago
.gitattributes cd2b7530f5 Initial commit 12 years ago
.gitignore 1c12cd4bd6 Fix x64 builds of Avaloina.Direct2D1. Refactor build scripts to reduce time and fix issues. 7 years ago
.gitmodules dff3031e20 Upgrade ReactiveUI to the v8 alpha nuget package so we don't need to maintain our own fork. Avalonia.ReactiveUI only registers the MainScheduler, and it does so via a call to UseReactiveUI on AppBuilder. 8 years ago
.travis.yml 1e611022be Updated .net core SDK version. 7 years ago
Avalonia.sln a7f05540b6 Added SampleApp.props. 7 years ago
Avalonia.sln.DotSettings d5febb11d5 Apply FrameworkPathOverride automatically 8 years ago
Avalonia.v3.ncrunchsolution a46be4e200 Ensure correct thread for AvaloniaProperty access. 8 years ago
NuGet.Config 1d2be074d6 Added cake build scripts 9 years ago
Settings.StyleCop a833a5e883 Stylecop fixes. 11 years ago
appveyor.yml c93335e6c8 Removed NUGET_API_KEY from appveyor.yml 7 years ago
build.cake 9cb871e901 Don't run tests on net47 in build.cake. 7 years ago
build.ps1 2c14b70d0a Renamed Mono sln Config to NetCoreOnly. 7 years ago
build.sh 9d40d5dc69 Update build.sh 9 years ago
licence.md 6993973731 Added licence.md 11 years ago
packages.cake 27ab312be5 Fixed nuget deps 7 years ago
parameters.cake 6c3305d1b8 Missing quote. 7 years ago
readme.md 648ce074bb Updating readme to reflect beta status 7 years ago

readme.md

Avalonia

Gitter Chat Windows Build Status Linux/Mac Build Status Open Collective
Gitter Build status Build Status Backers on Open Collective Sponsors on Open Collective

About

Avalonia is a WPF-inspired cross-platform XAML-based UI framework providing a flexible styling system and supporting a wide range of OSs: Windows (.NET Framework, .NET Core), Linux (GTK), MacOS, Android and iOS.

Avalonia is currently in beta which means that the framework is generally usable for writing applications, but there may be some bugs and breaking changes as we continue development.

Control catalog Desktop platforms Mobile platforms

Getting Started

Avalonia Visual Studio Extension contains project and control templates that will help you get started. After installing it, open "New Project" dialog in Visual Studio, choose "Avalonia" in "Visual C#" section, select "Avalonia .NET Core Application" and press OK (screenshot). Now you can write code and markup that will work on multiple platforms!

Avalonia is delivered via NuGet package manager. You can find the packages here: (stable(ish), nightly)

Use these commands in Package Manager console to install Avalonia manually:

Install-Package Avalonia
Install-Package Avalonia.Desktop

Bleeding Edge Builds

Try out the latest build of Avalonia available for download here: https://ci.appveyor.com/project/AvaloniaUI/Avalonia/branch/master/artifacts

Documentation

As mentioned above, Avalonia is still in beta and as such there's not much documentation yet. You can take a look at the getting started page for an overview of how to get started but probably the best thing to do for now is to already know a little bit about WPF/Silverlight/UWP/XAML and ask questions in our Gitter room.

There's also a high-level architecture document that is currently a little bit out of date, and I've also started writing blog posts on Avalonia at http://grokys.github.io/.

Contributions are always welcome!

Building and Using

See the build instructions here.

Contributing

Please read the contribution guidelines before submitting a pull request.

Contributors

This project exists thanks to all the people who contribute. [Contribute].

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]