Skip to content

Latest commit

 

History

History
179 lines (156 loc) · 16.5 KB

dotnet-developer-projects.md

File metadata and controls

179 lines (156 loc) · 16.5 KB

.NET Open Source Developer Projects

There are many .NET open source developer projects. You can always use a search engine to find projects, and that's a good approach. This list is intended to provide a showcase for projects that want it and to be community maintained. PR a change in and it will be accepted (modulo duplicates). Projects should be sorted alphabetically provide a one-line description and GitHub (or source) links are preferred over marketing sites.

  • .NET Implementations

  • .NET Core - Core .NET Framework

  • Mono Project - Cross-platform implementation of .NET Framework.

  • Platforms

  • Castle Project - Umbrella project for ActiveRecord, DynamicProxy, MonoRail, Windsor

  • Catel - Application platform with IoC, logging, reflection and much more that serves as a base for applications that must be ready for future growth.

  • Cosmos

  • Languages

  • ClojureCLR - A .NET implemention of the Clojure programming language, built on the DLR.

  • Dynamic Language Runtime - A toolkit for building dynamic languages for .NET.

  • IronPython - A .NET implementation of the Python programming language, built on the DLR.

  • IronRuby - A .NET implementation of the Ruby programming language, built on the DLR.

  • IronScheme - A R6RS conforming Scheme-like implementation based on the Microsoft DLR.

  • Nemerle A high-level statically-typed programming language which offers functional, object-oriented and imperative features and has a simple C# like syntax and a powerful meta-programming system.

  • Eagle A .NET implementation of the Tcl programming language, built on the CLR.

  • MoonSharp A Lua interpreter and remote debugger, written entirely in C#, easily embeddable in any application running on .NET 3.5+ and Mono.

  • Security / Identity Management

  • Thinktecture IdentityServer

  • Thinktecture IdentityManager

  • Web CMS

  • DNN (formerly DotNetNuke) - Web content management platform (CMS).

  • Orchard - A community-focused Content Management System built on the ASP.NET MVC platform.

  • Suave A lightweight web server and a set of combinators to manipulate route flow and task composition.

  • Umbraco - Web content management platform (CMS).

  • WebSharper Web programming platform including a compiler from F# code to JavaScript.

  • Web Frameworks

  • Nancy - A lightweight, low-ceremony, framework for building HTTP based services on .NET and Mono.

  • NemerleWeb - Web MVVM library for .Net. It uses reactive data model which allows creating rich internet applications.

  • ADO.NET providers

  • Npgsql PostgreSQL

  • Firebird .NET client Firebird

  • System.Data.SQLite SQLite

  • Libraries

  • Algorithmia Algorithms and Data structures

  • AngleSharp - Ultimate angle brackets parser library. It parses HTML5, MathML, SVG and CSS to construct a DOM based on the official W3C specification.

  • ArcGIS.PCL

  • AzureNetQ - An easy to use .NET API for Azure Service Bus.

  • Cimbalino Toolkit - A set of useful and powerful tools that will help you build your Windows Platform applications.

  • Coding4Fun Toolkit

  • ColoredConsole

  • Cricket - Actor library

  • DiffSharp Automatic Differentiation Library

  • DotNetOpenAuth - Library that adds support for your site visitors to login with their OpenIDs by just dropping an ASP.NET control onto your page.

  • EasyNetQ - An easy to use .NET API for RabbitMQ.

  • FeatureToggle - Simple, reliable feature toggles in .NET.

  • FluentBootstrap

  • FluentValidation - A small validation library for .NET that uses a fluent interface and lambda expressions for building validation rules.

  • GongSolutions.Wpf.DragDrop A drag'n'drop framework for WPF.

  • HudlFfmpeg - A/V transcoding framework that helps build complex FFmpeg commands.

  • ImageProcessor

  • Kentor.AuthServices A SAML2 Service Provider for .NET.

  • LibGit2Sharp

  • Lucene.Net

  • MahApps.Metro - A toolkit for creating metro-style WPF applications.

  • Math.NET Numerics Provides methods and algorithms for numerical computations in science, engineering and every day use.

  • Mjolnir - Hystrix-inspired fault tolerance with circuit breakers and thread pools.

  • NetTopologySuite A .NET port of the JTS Topology Suite.

  • JSON.NET - Popular high-performance JSON framework for .NET

  • NodaTime - A better date and time API for .NET

  • OsmSharp Mapping & Routing library.

  • PocketSharp

  • RestSharp - Simple REST and HTTP API Client for .NET

  • RestBus - Easy Asynchronous Messaging and Queueing for .NET

  • SharpDX - SharpDX is a project delivering the full DirectX API for .NET on all Windows platforms.

  • SharpMap An easy-to-use mapping library for use in web and desktop applications

  • Splat - A library to make things cross-platform that should be.

  • SSH.NET - A client-side library for SSH, SCP and SFTP.

  • WpfToolkit - Fork of the MS WPF Toolkit

  • Model-View-ViewModel (MVVM) Frameworks

  • Caliburn Micro

  • Catel.MVVM

  • MVVM Cross

  • MVVM Light Toolkit

  • Radical

  • ReactiveUI

  • Simple Mvvm Toolkit

  • Tools

  • Fody - Extensible tool for weaving .NET assemblies.

  • FAKE Build automation system with capabilities which are similar to make and rake.

  • FsEye A visual object tree inspector for the F# Interactive.

  • FsPickler Serialization library that facilitates the distribution of .NET objects.

  • FsharpLint Lint tool for F#.

  • GitLink - Command-line tool to make .NET open source accessible without the need for a symbols server

  • GitVersion - Use convention to derive a SemVer product version from a GitFlow based repository.

  • Glimpse - Providing real time diagnostics & insights to the fingertips of hundreds of thousands of developers daily.

  • ILSpy - ILSpy is the open-source .NET assembly browser and decompiler.

  • Mini Profiler - A simple but effective mini-profiler for .NET and Ruby.

  • Paket Dependency manager for .NET and Mono projects, which is designed to work well with NuGet packages and also enables referencing files directly from GitHub repositories.

  • Protobuf-net - A .NET implementation of protobuf, allowing you to serialize your .NET objects efficiently and easily.

  • scriptcs - scriptcs makes it easy to write and execute C# with a simple text editor.

  • Snoop WPF - Snoop - The WPF Spy Utility

  • Sql Bulk Copy Sync

  • Vagrant Automated dependency resolution and dynamic assembly compilation framework.

  • Testing

  • canopy A web testing framework.

  • FakeItEasy

  • FsCheck A tool for testing .NET programs automatically.

  • moq - The most popular and friendly mocking framework for .NET

  • NSubstitute - A friendly substitute for .NET mocking frameworks.

  • NUnit - NUnit is a unit-testing framework for all .NET languages.

  • tickspec A lightweight Behaviour Driven Development (BDD) framework.

  • xUnit - xUnit.net is a community-focused unit testing tool for the .NET Framework.

  • AutoFixture - An open source framework for .NET designed to minimize the 'Arrange' phase of your unit tests. Its primary goal is to allow developers to focus on what is being tested rather than how to setup the test scenario, by making it easier to create object graphs containing test data.

  • Dependency Injection

  • Autofac - Autofac is an addictive Inversion of Control container for .NET 4.5, Silverlight 5, Windows Store apps, and Windows Phone 8 apps.

  • DryIoc - DryIoc is small, fast, capable IoC Container for .NET

  • fFastInjector - fFastInjector is a high-performing dependency injector, service locator, and/or IOC (inversion of control) container.

  • Funq - A fast DI container you can understand.

  • Grace - Grace is a feature rich Dependency Injection container in a portable class library

  • Griffin - Inversion of control container with (almost) zero configuration

  • HaveBox - HaveBox is a very fast and lightweight IoC containter. The goal is to keep it fast and light, and at the same time easy to use.

  • Hiro - An ultra-lightweight, inversion of control container compiler framework

  • IfInjector - High performance mobile micro-IoC container.

  • LightCore - LightCore is a lightweight dependency injection container that can be used as a service locator and despite its simplicity and ease boasts numerous features.

  • LightInject - A ultra lightweight IoC container

  • MicroSliver - MicroSliver is a micro, non-bloat, non-intimidating and speedy .NET (ASP.NET, Silverlight, RIA Services, WPF, Forms and Metro!)

  • Mugen Injection - The MugeniInjection is a lightweight and fast managed IoC (Inversion of Control) and DI (Dependency Injection) with support for constructor, property and method call injection

  • Ninject for Desktop - Dependency injector for .NET

  • Ninject for Portable Class Libraries, Universal apps and Xamarin

  • QuickInject - QuickInject is a Unity 3.5 based IoC container that aims to give the Unity container a performance advantage in basic scenarios.

  • Simple Injector - Simple Injector is an easy-to-use Dependency Injection (DI) library for .NET 4+ that supports Silverlight 4+, Windows Phone 8, Windows 8 including Universal apps and Mono.

  • Spring.NET - Spring.NET is an open source application framework that makes building enterprise .NET applications easier.

  • StructureMap - StructureMap is a Dependency Injection / Inversion of Control tool for .Net that can be used to improve the architectural qualities of an object oriented system by reducing the mechanical costs of good design techniques.

  • StyleMVVM - Style MVVM is a toolkit designed for the Windows Store platform around the idea of being light weight and fast.

  • TinyIoC - An easy to use, hassle free, Inversion of Control Container for small projects, libraries and beginners alike.

  • Unity Container - The Unity Container (Unity) is a lightweight, extensible dependency injection container with optional support for instance and type interception.

  • Castle Project/Windsor - IOC / Proxy

  • IOC Comparison - IoC Container Benchmark - Performance comparison

  • Data Access

  • Dapper - Dapper is a single file you can drop in to your project that will extend your IDbConnection interface.

  • linq2db - Lightweight ORM and LINQ provider with support for various databases including MS SQL, PostgreSQL, Oracle and MySQL

  • NHibernate - Object Relational Mapper

  • Simple Data - A light-weight, dynamic data access component for C# 4.0.

  • Sqlite-net - Simple, powerful, cross-platform SQLite client and ORM.

  • NMEA Parser - Library for handling NMEA message in Windows Desktop, Store, Phone and Xamarin (Android + iOS), coming from files, Bluetooth, serial port or any stream.

  • StackExchange.Redis

  • SQL LocalDB Wrapper - SQL LocalDB Wrapper is an assembly providing interop with the SQL LocalDB native API from managed code using .NET APIs.

  • Games

  • MonoGame - One framework for creating powerful cross-platform games.

  • Paradox - Paradox is a versatile and engaging game engine.

  • OpenRA - An open-source implementation of the Command & Conquer: Red Alert engine using .NET/Mono and OpenGL.

  • UI and Control libraries

  • Callisto - UI Control Toolkit for WinRT apps

  • Eto - Cross platform GUI Toolkit for desktop and mobile apps

  • Mono XWT - A cross-platform UI toolkit for creating desktop apps

  • Windows Services

  • TopShelf

  • Scheduling

  • Quartz.Net

  • Consumer projects

  • .NET open source consumer projects list

This list is just a starting point - also take a look at all the projects on CodePlex and on GitHub Trending C#.

Thanks to @slodge for providing the initial list.

@quozd hosts an Awesome .NET! list. Also worth checking out.