Userware announced today that it has released OpenSilver 1.0, as Microsoft Silverlight has reached the end of support.
What is OpenSilver?
OpenSilver is a modern, plugin-free, open-source reimplementation of Silverlight, capable of running large, complex legacy applications, as well as newly written C# and XAML applications.
Developers worldwide have poured great amounts of effort into building countless Silverlight applications over the past 15 years. OpenSilver provides them with an alternative to rewriting them. It lets their existing code run on every browser so that they can leverage their .NET skills and focus on new improvements instead.
The project is hosted publicly on GitHub and is actively developed by a large team of full-time developers, funded by Userware and corporations of all sizes investing in the technology to maintain their line-of-business applications.
Why OpenSilver?
The company stated that the development of OpenSilver was motivated by the team’s strong belief that developers should not be compelled to rewrite existing applications because of a change in the underlying stack. The thousands of Silverlight applications still in production are a testament to this. Silverlight’s end of life was announced in 2011, as a technical roadblock presented itself: browsers would one day stop allowing plugins. Yet many developers remained committed for over ten years to what they considered to be a valid platform, as it worked just fine for their purposes. OpenSilver has worked on lifting Silverlight’s roadblocks and improving the underlying technology.
OpenSilver is now mature enough to run complex line-of-business apps
says Giovanni Albani, CEO of Userware.
We can now offer a modern, enhanced version of Silverlight and expand the realm of possibilities for .NET developers when it comes to web applications.
How does it work?
OpenSilver works just like Silverlight, but without the plugin.
Instead of using browser plugins, OpenSilver leverages WebAssembly to run applications directly and securely within the browser’s sandbox. WebAssembly files (.wasm) follow a W3C standard and are natively recognized by all modern browsers, in the same way, JavaScript, HTML, and CSS are.
No knowledge of JavaScript, HTML, or CSS is required to build a fully functional web application. Controller logic written in C# runs in the browser thanks to Microsoft Blazor. As for the presentation layer, OpenSilver adds support for XAML. This makes for a full .NET development experience.
OpenSilver applications run on every modern browser, across all platforms, including iOS, Android, Windows, MacOS, and Linux.
How is a Silverlight application migrated to OpenSilver?
Developers can migrate an existing web application of any size using the OpenSilver Visual Studio extension. The extension helps developers create new projects from their existing code, replacing Silverlight API calls with their OpenSilver equivalent where appropriate. Additional steps are explained in the OpenSilver documentation.
As companies and developers undertake the porting of their applications, Userware can provide development services to assist during the process or take care of the whole migration with the help of the core team. Every feature implemented for custom development is incorporated into OpenSilver.
Is OpenSilver missing any features of Silverlight?
OpenSilver fully supports the core capabilities of the Silverlight engine, including full language support (C#, XAML). Most of the platform APIs are supported, allowing developers to include major C# libraries such as Telerik UI, WCF RIA Services, PRISM, and MEF. Support for additional platform APIs is continuously being added.
Does OpenSilver offer any improvements over Silverlight?
OpenSilver can leverage the latest C# language version 9.0 and the latest Visual Studio. It supports .NET Standard, .NET 5, and .NET 6, in addition to legacy Silverlight code. OpenSilver is also compatible with all JavaScript libraries, combining the best of both worlds.
Additionally, since OpenSilver relies entirely on open standards and runs within the browser’s sandbox, it enjoys wider browser compatibility, can better benefit from browser enhancements and isn’t vulnerable to any security issues that a plugin might introduce.
Why remain in .NET instead of rewriting in a JavaScript-based framework?
With Silverlight being discontinued, thousands of companies have been hit with the prospect of having to discard their entire .NET-based front-end applications, and having to begin the arduous task of re-designing and re-developing them in JavaScript/HTML/CSS.
Such complete rewrites are sometimes draining for organizations. They are impactful to resources and costs, and have fluctuating timelines due to unforeseen bugs and intangibles, putting the overall project at significant risk of delay or abandonment.
Thanks to OpenSilver, this scenario is no longer inevitable, as OpenSilver lets their development continue on their existing .NET codebase.
According to Darshin Vyas, Userware’s VP of Sales, the main advantage is cost.
Our clients estimate that a complete rewrite of a medium to the large-sized application would have taken one to two years.
says Vyas.
There is significant overhead in gathering requirements, developing new specifications, recruiting and onboarding for a new skill set, understanding the existing code, and developing and deploying on a new stack. OpenSilver eliminates this overhead. Some of our clients were able to slash their timeline in half or more while spending a fraction of the rewrite cost.
There are several other compelling reasons to stay on .NET, such as the reduced risk of keeping a stable codebase, the possibility to share C# code between the client-side and the server-side, and the availability of .NET libraries such as Telerik.
What’s next for OpenSilver?
The team is continually expanding coverage of Silverlight’s platform APIs, and improving OpenSilver’s ability to migrate WPF applications (in addition to Silverlight applications).
Future versions of OpenSilver will also include new functionality, such as the ability to support applications written in VB.NET, and those using the Microsoft LightSwitch component.
- OpenSilver 1.0 is available for download at: https://www.opensilver.net
- Source code: https://github.com/OpenSilver/OpenSilver
About the company
Userware is a software company founded in 2007 by two experts in Microsoft technologies. It is based in Paris, France, and has a portfolio of products with more than 25,000 customers in over 75 countries.
Specialized in Microsoft technologies and developer tools, the company is also behind CSHTML5, a Visual Studio extension that is able to compile C# and XAML code into HTML and JavaScript. Userware has been continuously improving CSHTML5 for the past 7 years and is now leveraging its codebase to deliver OpenSilver, replacing JavaScript with WebAssembly for native execution and improved .NET compatibility.
OUR VISION:
We are .NET developers who believe that Silverlight was the best platform ever for developing line-of-business (LOB) applications. We are sad to see Silverlight die due to the lack of support for plug-ins in modern browsers, so we want to reimplement it using modern, open, and standards-based technologies. We want to make it even more powerful than before, for developers to have the tools to build amazing products that can change the world.
Be the first to comment