Generated by GPT-5-mini| Mono Project | |
|---|---|
| Name | Mono |
| Developer | XenSource; Novell; Xamarin; Microsoft |
| Released | 2004 |
| Latest release | (varies by distribution) |
| Programming language | C, C++ |
| Operating system | Linux, macOS, Windows, BSD, Solaris, Android, iOS |
| License | MIT, LGPL (historically) |
| Website | (see project pages) |
Mono Project The Mono Project is an open source implementation of the .NET Framework and related technologies, created to enable cross-platform execution of applications written for C# and other Common Language Infrastructure languages. It provides a runtime, just-in-time compilation, class libraries, and development tools to run and port applications across Linux, macOS, Windows, Android, and iOS. The project has influenced and interoperated with efforts from organizations such as Microsoft, Novell, Xamarin, Canonical, and SUSE.
Mono implements specifications from standards bodies such as the ECMA standards for C# and the CLI. It includes a managed runtime called the Common Language Runtime (CLR) compatible with the Microsoft .NET Framework CLR, class libraries that map to Base Class Library APIs, and toolchains for compilation and debugging that link to projects and companies like GNU Compiler Collection, LLVM, MonoDevelop, Visual Studio Code, and JetBrains. Mono’s aim enabled applications originally written for Windows Presentation Foundation or ASP.NET to be ported to operating systems maintained by The Linux Foundation, Apple Inc., and vendors such as Red Hat.
The project was initiated by developers at Ximian in 2001 with backing from figures tied to Miguel de Icaza and collaborators who previously worked on projects intersecting with GNOME and GStreamer. In 2003–2004, commercial support shifted through acquisition by Novell and later involvement by Xamarin, which commercialized tooling and mobile runtimes integrating with Microsoft technologies. Over time the codebase and stewardship passed through corporate events involving Attachmate Group, and parts of the project were later incorporated into offerings by Microsoft after the acquisition of Xamarin and strategic open source moves tied to .NET Core and .NET 5 convergence.
Mono’s architecture centers on a managed runtime, a garbage collector, and a JIT/AOT compilation stack. Core components include: - Mono runtime and CLR-compatible virtual machine interoperating with ECMA International specifications and influenced by implementation strategies from Microsoft Corporation. - Mono class libraries implementing APIs analogous to Base Class Library and web frameworks like ASP.NET. - Just-In-Time compiler and Ahead-Of-Time compiler linking to toolchains such as LLVM and packages used by GCC distributions. - Language compilers and tools for C#, Visual Basic .NET, and other CLI languages that integrate with IDEs like MonoDevelop and Visual Studio. - Interoperability layers for native code and bindings used by projects like GTK+ and Xamarin.Android.
Mono was engineered to support diverse operating systems and processor architectures. Official and community ports target x86, x86-64, ARM, and PowerPC architectures on platforms including Linux, macOS, Windows, Android, iOS, BSD variants, and legacy systems like Solaris. Portability efforts have collaborated with distributions and vendors such as Debian, Fedora, SUSE, Canonical, and device ecosystems supported by Google and Apple Inc..
The project provides a suite of developer tools: compilers, debuggers, profilers, and IDE integrations. Tooling has been delivered via environments and products like MonoDevelop, Visual Studio, Visual Studio Code, and profiling utilities that interoperate with standards from ECMA International and toolchains used in GNOME development. Build and continuous integration systems for Mono have integrated with infrastructure maintained by Jenkins, Travis CI, and distribution packaging managed by vendors such as Red Hat and Debian Project.
Mono’s source code has been released under a mix of permissive and copyleft licenses including MIT and LGPL in different components. Corporate stewardship and community governance have involved entities such as Novell, Xamarin, and Microsoft, with participation by contributors affiliated with organizations like Canonical and Red Hat. Licensing choices influenced adoption in commercial products, mobile platforms, and server deployments where compatibility with Microsoft .NET and open source obligations were evaluated.
Mono enabled cross-platform ports and products across desktop, server, and mobile ecosystems. Notable adoptions include applications and projects such as Xamarin mobile stacks, the Unity runtime for games, the MonoDevelop IDE, and server-side uses in cloud and hosting services aligned with Amazon Web Services, Microsoft Azure, and distributions by Red Hat and SUSE. The runtime has been embedded in projects spanning multimedia (integrations with GStreamer), desktop environments like GNOME, and game development studios relying on Unity and engine toolchains.
Category:Free and open-source software