Представлен выпуск проекта OpenSilver 3.0, продолжающего развитие платформы Silverlight и позволяющего создавать интерактивные web-приложения при помощи технологий C#, F#, XAML и .NET. Скомпилированные при помощи OpenSilver приложения Silverlight могут работать в любых настольных и мобильных браузерах с поддержкой WebAssembly, но компиляция пока возможна только в Windows с использованием среды Visual Studio. Код проекта написан на языке C# и распространяется под лицензией MIT.
В 2021 компания Microsoft прекратила разработку и сопровождение платформы Silverlight в пользу применения стандартных Web-технологий.
Изначально проект OpenSilver был нацелен на предоставление инструментария для продления жизни существующих Silverlight-приложений в условиях отказа от сопровождения платформы компанией Microsoft и прекращения поддержки плагинов в браузерах. В OpenSilver поддерживаются все основные возможности движка Silverlight, включая полную поддержку языков C# и XAML, а также реализацию большей части API платформы, достаточную для использования таких C#-библиотек, как Telerik UI, WCF RIA Services, PRISM и MEF.
В текущем виде OpenSilver уже вышел за рамки прослойки для продления жизни Silverlight и может рассматриваться как самостоятельная платформа для создания новых приложений. Например, проектом развивается среда разработки (дополнение к Visual Studio), обеспечивается поддержка новых версий языка C# и платформы .NET, предоставляется совместимость с библиотеками на языке JavaScript.
В качестве основы OpenSilver задействован код открытых проектов Mono (mono-wasm) и Microsoft Blazor (часть ASP.NET Core), а для выполнения в браузере применяется компиляция приложений в промежуточный код WebAssembly. OpenSilver продолжает развитие проекта CSHTML5, позволяющего компилировать приложения C#/XAML/.NET в представление на языке JavaScript, пригодное для запуска в браузере, и расширяет его кодовую базу возможностями для компиляции C#/XAML/.NET в WebAssembly, а не в JavaScript.
В новой версии:
- Предложен визуальный построитель интерфейса, позволяющий проектировать интерфейс приложений .NET и web-сайты в режиме drag&drop, используя более 100 встроенных блоков интерфейса.
- Добавлен AI-помощник, позволяющий генерировать и изменять интерфейсы пользователя при помощи команд на естественном языке. Пользователю достаточно в свободной форме описать желаемые изменения или предложить картинку с макетом и AI-помощник сам обновит или сгенерирует XAML-код.
- Расширены средства для интеграции с внешними интегрированными средами разработки. Добавлена поддержка редактора кода Visual Studio Code.
- Введено в строй web-приложение XAML.io, позволяющее проектировать интерфейсы пользователя на базе XAML из браузера.