Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-dotnet

A collection of awesome .NET libraries, tools, frameworks, and software. Inspired by awesome-ruby, awesome-php, awesome-python, frontend-dev-bookmarks and ruby-bookmarks.
https://github.com/bykovas/awesome-dotnet

Last synced: about 12 hours ago
JSON representation

  • Algorithms and Data structures

    • Algorithmia - Algorithm and data-structure library for .NET 3.5 and up. Algorithmia contains sophisticated algorithms and data-structures like graphs, priority queues, command, undo-redo and more.
    • C# Algorithms - A C# plug-and-play class-library project of standard Data Structures and Algorithms. It contains 35+ Data Structures and 30+ Algorithms designed as Object-Oriented isolated components.
  • API

    • NancyFx - Lightweight, low-ceremony, framework for building HTTP based services on .Net and Mono
    • Mobius: C# API for Spark - Mobius adds C# language binding to Apache Spark, enabling the implementation of Spark driver code and data processing operations in C#.
    • ServiceStack - Thoughtfully architected, obscenely fast, thoroughly enjoyable web services for all
    • Nelibur - Nelibur is message based web service framework on the pure WCF. Nelibur simplifies creating high-performance and message based web services and you certainly have all the power of the WCF.
    • WebAPI Contrib - Collection of open source projects to help improve your work with ASP.NET Web API
    • Breeze - Api framework enabling rich data access by using the OData 3 protocol. Client libraries available for Javascript and C#.
  • Application Frameworks

    • ASP.NET Boilerplate - A starting point for new modern ASP.NET MVC web applications with best practices and most popular tools.
    • Orleans - Orleans is a framework that provides a straight-forward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns
    • CoreFX - The corefx repo contains the library implementation (called "CoreFX") for .NET Core. It includes System.Collections, System.IO, System.Xml and many other components. It builds and runs on Windows. You can 'watch' the repo to see Linux and Mac support being added over the next few months.
    • CSLA .NET - business layer development framework http://cslanet.com/
    • Mono - Mono open source ECMA CLI, C# and .NET implementation
    • Mono-Addins - Mono.Addins is a generic framework for creating extensible applications, and for creating add-ins which extend those applications
    • peasy - Peasy is a middle tier framework that offers an easy to use and flexible rules engine and was designed to address common challenges such as concurrency handling, transactional support, fault tolerance, threading, scalability, async and multiple client support, and easy testability, all without a huge learning curve!
    • Spring.Net - Spring.NET is an open source application framework that makes building enterprise .NET applications easier
    • DotNetty - DotNetty is a port of Netty, asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients.
    • ASP.NET MVC Boilerplate Framework - ASP.NET MVC Extensions and Helper NuGet packages.
  • Application Templates

    • ASP.NET Core Starter Kit - backend: .NET Core, EF Core, C#; frontend: Babel, Webpack, React, CSS Modules
    • ProjectScaffold - A prototypical .NET solution recommended by the F# Foundation---includes file system setup, Paket for dependencies and FAKE for build/test automation. By default, build process also compiles documentation and generates NuGet packages.
    • Serene - Serenity is an ASP.NET MVC application platform designed to simplify and shorten development of data-centric business applications with a service based architecture. Serene is a starter template to build Serenity applications.
    • Side-Waffle - Large collection of useful templates for Web and Desktop development.
    • Template10 - Windows 10 templates with design patterns.
    • MVC.Template - ASP.NET Core MVC project starter template.
    • ASP.NET MVC Boilerplate - Professional ASP.NET MVC templates for building secure, fast, robust and adaptable web applications or sites. It provides the minimum amount of code required on top of the default MVC template provided by Microsoft.
  • Assembly Manipulation

    • Fody - Extensible tool for weaving .net assemblies
    • Mono.Cecil - Cecil is a library to generate and inspect programs and libraries in the ECMA CIL form.
  • Assets

    • Cassette - Manages .NET web application assets (scripts, css and templates)
    • NodeAssets - Asset Manager for .net that has live css updates using SignalR and can optionally leverage NodeJS compilers
    • Bundler - Compile & Minify Less/Sass/Stylus/Css/JS/CoffeeScript/LiveScript files. Integrates with MVC and ServiceStack
    • SquishIt - Lets you *easily* bundle some css and javascript
    • Bundle Transformer - Modular extension for [Microsoft ASP.NET Web Optimization Framework](http://aspnetoptimization.codeplex.com/). Its modules supports LESS, Sass, CoffeeScript, TypeScript, Mustache, Handlebars, Autoprefixer along with a bunch of different JS and CSS minifiers.
  • Authentication and Authorization

    • DotNetOpenAuth - A C# implementation of the OpenID, OAuth and InfoCard protocols
    • Logibit Hawk - A F# [Hawk](https://github.com/hueniverse/hawk#usage-example) authentication library
    • ASP.NET Identity - New membership system for ASP.NET applications
    • IdentityModel - Helper library for identity & access control in .NET 4.5 and MVC4/Web API.
    • IdentityServer - Extensible OAuth2 and OpenID Connect provider framework.
    • OAuth - A very lightweight library for generating OAuth 1.0a signatures written in C#
    • Stuntman - Stuntman is a library for impersonating users during development leveraging .NET Claims Identity.
  • Build Automation

    • Psake - .NET-based build automation tool written in PowerShell
    • FAKE - F# Make, a cross platform build automation system
    • Invoke-Build - PowerShell build and test automation tool inspired by Psake.
    • MSBuild - The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio
    • Cake - Cake (C# Make) is a cross platform build automation system with a C# DSL.
    • Nake - Magic script-based C# task runner
  • Caching

    • CacheCow - An ASP.NET Web API HTTP caching implementation both on client and server
    • CacheManager - A common interface and abstraction layer for caching.
    • Foundatio - A common interface with in memory, redis and hybrid implementations.
    • CacheAdapter - Another common cache abstraction layer for caching with enhanced cache API usage.
    • Akavache - An asynchronous, persistent key-value store
  • CLI

    • Command Line Parser - The Command Line Parser Library offers to CLR applications a clean and concise API for manipulating command line arguments and related tasks
    • Fluent Command Line Parser - A simple, strongly typed .NET C# command line parser library using a fluent easy to use interface
    • Power Args - PowerArgs converts command line arguments into .NET objects that are easy to program against. It also provides a ton of optional capabilities such as argument validation, auto generated usage, tab completion, and plenty of extensibility
    • Argu - Declarative CLI argument & XML configuration parser for F# applications.
    • Colorful.Console - Colorful console output.
    • EntryPoint - Composable CLI Argument Parser for .Net Core & .Net Framework 4.5+.
    • clipr - A CLI library inspired by Python's argparse that transforms a command line into a strongly-typed object. It supports custom argument types, automated (and localized) help generation, and a variety of ways to store parsed arguments.
    • ReadLine - A GNU-Readline like library for .NET/.NET Core.
    • Appccelerate - Command Line Parser - A command line parser with fluent definition syntax, different argument types, required and optional arguments, value restrictions, aliases, type conversion and semi-automatic usage help message composition
  • CLR

    • CoreCLR - The coreclr repo contains the complete runtime implementation (called "CoreCLR") for .NET Core. It includes RyuJIT, the .NET GC, native interop and many other components. It builds and runs on Windows. You can 'watch' the repo to see Linux and Mac support being added over the next few months.
  • CMS

    • Composite C1 - A web CMS that focus on UX and adaptability
    • N2CMS - Open source, lightweight, code-first CMS able to seamlessly integrate into any MVC project.
    • Orchard - Free, open source, community-focused project aimed at delivering applications and reusable components on the ASP.NET platform
    • Umbraco - Umbraco is a free open source Content Management System built on the ASP.NET platform
    • Piranha CMS - Piranha is the fun, fast and lightweight .NET framework for developing cms-based web applications with an extra bite. It's built on ASP.NET MVC and Web Pages and is fully compatible with both Visual Studio and WebMatrix. http://piranhacms.org
    • BetterCMS - Open Source .NET Intuitive User Interface for Developer and Publisher
    • mojoPortal - MojoPortal is an extensible, cross database, mobile friendly, web content management system (CMS) and web application framework written in C# ASP.NET
    • DotNetNuke - DNN Platform is our free, open source web CMS and the foundation of every professional DNN solution. Over 750,000 organizations worldwide have built websites powered by the DNN Platform.
  • Code Analysis and Metrics

    • .NET Compiler Platform ("Roslyn") Analyzers - A number of Roslyn diagnostic analyzers initially developed to help flesh out the design and implementation of the static analysis APIs.
    • App.Metrics - App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application and reports it's health. See the [docs](http://app-metrics.io/) for me details.
    • Gendarme - Extensible rule-based tool to find problems in .NET applications and libraries
    • Metrics-Net - Capturing CLR and application-level metrics. So you know what's going on.
    • AspNet.Metrics - Capturing CLR, application-level web request metrics. Middleware and extensions using Metrics-Net
    • BenchmarkDotNet - Powerful .NET library for benchmarking.
    • NsDepCop - Static code analysis tool to enforce namespace dependency rules in C# projects.
    • StyleCop - StyleCop analyzes C# source code to enforce a set of style and consistency rules
    • Codinion - Enhanced syntax highlighting for C# and some other "Visual" features.
  • Compilers, Transpilers and Languages

    • ClojureCLR - A port of Clojure to the CLR, part of the Clojure project
    • JSIL - CIL to Javascript Compiler http://jsil.org/
    • Mono-basic - Visual Basic Compiler and Runtime
    • Nemerle - Nemerle is a high-level statically-typed programming language for the .NET platform. It offers functional, object-oriented and imperative features. It has a simple C#-like syntax and a powerful meta-programming system. http://nemerle.org/About
    • Netjs - .NET to TypeScript and JavaScript compiler. Portable Class Libraries work great for this. You can even pass EXEs.
    • P - P is a language for asynchronous event-driven programming.
    • Roslyn - The .NET Compiler Platform ("Roslyn") provides open-source C# and Visual Basic compilers with rich code analysis APIs. It enables building code analysis tools with the same APIs that are used by Visual Studio.
    • Testura.Code - Wrapper around the Roslyn API and used for generation, saving and and compiling C# code. It provides methods and helpers to generate classes, methods, statements and expressions.
    • VisualFSharp - The Visual F# compiler and tools
    • Fable - F# to JavaScript Compiler
    • LinqOptimizer - An automatic query optimizer-compiler for Sequential and Parallel LINQ
    • Roslyn-linq-rewrite - Compiles C# code by first rewriting the syntax trees of LINQ expressions using plain procedural code, minimizing allocations and dynamic dispatch.
    • Bridge.NET - Open Source C# to JavaScript Compiler http://bridge.net/
    • FunScript - F# to JavaScript compiler with JQuery etc. mappings through a TypeScript type provider.
    • F# - The F# compiler, core library and tools - a functional programming language for safer, faster, better code writing.
    • IronScheme - R6RS Scheme compiler, runtime and many standard libraries
  • Compression

    • SharpCompress - SharpCompress is a compression library for .NET/Mono/Silverlight/WP7 that can unrar, un7zip, unzip, untar unbzip2 and ungzip with forward-only reading and file random access APIs. Write support for zip/tar/bzip2/gzip are implemented
    • DotNetZip.Semverd - An open-source project that delivers a .NET library for handling ZIP files, and some associated tools. (fork of [**Unmaintained** DotNetZip](http://dotnetzip.codeplex.com))
  • Books

    • .NET Core in Action - teaches how to write applications and libraries with .NET Core. **[$]**
    • 3rd edition - sharp-in-depth-fourth-edition) - deep dive into the details of the C# language. **[$]**
    • CLR via C# - Dig deep and master the intricacies of the common language runtime, C#, and .NET development. **[$]**
    • Functional Programming in C# - teaches how to best leverage the functional features of the C# language. **[$]**
    • Microservices in .NET Core - shows you how to build maintainable, secure and operations-friendly microservices using Nancy and .NET Core. **[$]**
    • Dependency Injection in .NET - injection-in-dot-net-second-edition) - teaches you to use Dependency Injection to reduce hard-coded dependencies between application components in .NET. **[$]**
  • Code Snippets

    • .NET Fiddle - Write, compile and run C# code in the browser. The C# equivalent of JSFiddle.
    • Gistlyn - Create, run and share your executable C# Github Gists.
  • Continuous Integration

    • AppVeyor - .NET Continuous Integration and Deployment as a service. **[$]** **[Free for OSS]**
  • Cryptography

    • HashLib - HashLib is a collection of nearly all hash algorithms you've ever seen, it supports almost everything and is very easy to use
    • libsodium-net - libsodium for .NET - A secure cryptographic library
  • Database Drivers

    • MySQL Connector - Connector/Net is a fully-managed ADO.NET driver for MySQL
    • Firebird.NET - The .NET Data provider is written in C# and provides a high-performance, native implementation of the Firebird API
  • Decompilation

    • ILSpy - ILSpy is the open-source .NET assembly browser and decompiler
    • JustDecompile Engine - The decompilation engine of [JustDecompile](http://www.telerik.com/products/decompiler.aspx)
  • DirectX

    • SlimDX - DirectX framework wrapper for .NET applications
    • SlimDX - DirectX framework wrapper for .NET applications
  • Distributed Computing

    • MBrace - Integrated Data Scripting for the Cloud
  • E-Commerce and Payments

  • ETL

    • Reactive ETL - Reactive ETL is a rewrite of Rhino ETL using the reactive extensions for .NET
  • Game

    • Wave Engine - Wave engine is a free c# component-based modern game engine which allows you to create cross-platform games supporting kinect, oculusrift, vuforia, cardboard, leapmotion and much more. **[Free][Proprietary]**
  • GIS

    • SharpMap - to-use mapping library for use in web and desktop applications
    • OsmSharp - C# library to work with OpenStreetMap (OSM) data. Provides reading, writing and route-planning for OSM data.
    • NetTopologySuite
  • GUI

    • DockPanelSuite - The Visual Studio inspired docking library for .NET WinForms
    • Office Ribbon - A library that implements MS Office Ribbon for WinForms.
    • SciterSharp - Create .NET cross-platform desktop apps using not just HTML, but all features of Sciter engine: CSS3, SVG, scripting, AJAX, <video>... Sciter is free for commercial use
  • HTML and CSS

    • HtmlAgilityPack - an agile HTML parser that builds a read/write DOM and supports plain XPATH or XSLT
  • HTTP

    • Flurl.Http - Fluent, portable, testable REST/HTTP client library
  • IDE

    • Waf DotNetPad - A simple and fast code editor that makes fun program with C# or Visual Basic.
    • Visual Studio Code - Excellent free editor from Microsoft, based on GitHub Atom.
    • Rider - A cross-platform C# IDE based on the IntelliJ platform and ReSharper
  • Image Processing

    • ImageResizer - Add commands to image URLs to get altered versions in milliseconds. Resizing, editing etc of images in real-time.
    • DynamicImage - High-performance open-source image manipulation library for ASP.NET.
    • Emgu CV - Cross-platform .NET wrapper for the OpenCV library.
    • Magick.NET - .NET wrapper for the ImageMagick library.
  • Install tools

    • Wax - An interactive editor for WiX projects.
  • IoC

    • DryIoc - Simple, fast all fully featured IoC container.
    • StructureMap - The original IoC/DI Container for .Net
  • JavaScript Engines

    • ClearScript - A library that makes it easy to add scripting to your .NET applications. It currently supports JavaScript (via V8 and JScript) and VBScript.
  • Logging

    • Essential Diagnostics - Extends the inbuilt features of System.Diagnostics namespace to provide flexible logging
    • ELMAH - Official ELMAH site
    • Log4Net - The Apache log4net library is a tool to help the programmer output log statements to a variety of output targets
    • Semantic Logging Application Block (SLAB) - Extends the inbuilt features of System.Diagnostics.Tracing namespace (EventSource class) to log to several sinks including Azure Tables, Databases, files (JSON, XML, text). Supports in-process and out-of-process logging through ETW, and Rx for real-time filtering/aggregating of events.
  • Machine Learning and Data Science

    • Infer.NET - A framework for running Bayesian inference in graphical models. It can also be used for probabilistic programming. **[[Proprietary](http://infernet.azurewebsites.net/docs/Frequently%20Asked%20Questions.aspx)]** **[Free]** **[Research]**
    • Accord.NET - Machine learning framework combined with audio and image processing libraries (computer vision, computer audition, signal processing and statistics).
    • FsLab - A collection of data science and machine learning libraries for F# and .NET
  • Markdown Processors

    • MarkdownSharp - Open source C# implementation of Markdown processor, as featured on Stack Overflow.
  • Mathematics

    • MathNet - Math.NET is an opensource initiative to build and maintain toolkits covering fundamental mathematics, targetting advanced but also every day needs of .Net developers
  • Minification

    • Microsoft Ajax Minifier - Contains JS and CSS minifiers which have a highest performance, because its have been specifically designed for .NET. Optionally produce Source Maps for JS code.
  • Misc

    • CSharp Pad - A web based C# REPL with awesome code completion.
    • BitSharp - C# Bitcoin Node
    • CSScript - CS-Script is a CLR based scripting system which usesC# as a programming language. CS-Script currently targets Microsoft implementation of CLR (.NET 2.0/3.0/3.5/4.0/4.5) with full support on Mono. Comes with many additional features, such as script hosting.
    • MSBuild ILMerge task - MSBuild ILMerge task is a NuGet package allows you to use the famous ILMerge utility in automated builds and/or Visual Studio projects.
  • MVVM

    • MVVM Light Toolkit - The main purpose of the toolkit is to accelerate the creation and development of MVVM applications in WPF, Silverlight, Windows Store (RT) and for Windows Phone
    • Catel - Catel is an application development platform with the focus on MVVM (WPF, Silverlight, Windows Phone and WinRT) and MVC (ASP.NET MVC). The core of Catel contains an IoC container, models, validation, memento, message mediator, argument checking, etc.
    • WPF Application Framework (WAF) - A lightweight Framework that helps you to create well structured WPF Applications. It supports you in applying a Layered Architecture and the Model-View-ViewModel pattern.
    • UpdateControls - Update Controls does not require that you implement INotifyPropertyChanged or declare a DependencyProperty. It connects controls directly to CLR properties. This makes it perfect for the Model/View/ViewModel pattern.
  • Office

    • NPOI - This project is the .NET version of POI Java project at http://poi.apache.org/.
    • EPPlus - EPPlus is a .net library that reads and writes Excel 2007/2010 files using the Open Office Xml format (xlsx).
  • ORM

    • NHibernate - NHibernate Object Relational Mapper
  • Package Management

    • NuGet - THE .NET Package Manager
  • Protocols

    • SharpSnmpLib - An open source SNMP implementation for .NET/Mono/Xamarin. Versioin 1, 2c, and 3 are supported.
  • Scheduling

    • Hangfire - An easy way to perform fire-and-forget, delayed and recurring tasks inside .NET apps
  • State machines

    • Appccelerate - State Machine - A powerful state machine library - configured with a fluent api and synchrounous and asynchronous state transition support
  • Static Site Generators

    • Wyam - A simple to use, highly modular, and extremely configurable static content generator
  • Visual Studio Plugins

    • Nuget Package Manager - NuGet is the package manager for the Microsoft development platform including .NET
    • Refactoring Essentials - Open source extension for C# and VB.NET refactorings, including code best practice analyzers.
    • VSColorOutput - Color highlighting for Build, Find and Debug output windows. Custom match patterns and colors can be added.
    • Developer Assistant - Developer Assistant for Visual Studio enables developers to find and reuse over 21 million code snippets and code sample projects from within the Visual Studio IDE.
    • CodeLineage - Easy access to a cumulative diff view between file revisions (supports svn, git, mercurial, perforce).
    • OzCode - OzCode is a Visual Studio Extension which cuts down on debugging time and increases productivity by detecting and isolating bugs, making them easy to fix. **[$]**
  • Web Frameworks

    • ASP.NET MVC - ASP.NET is a free web framework for building great web sites and applications
    • Suave.IO - Framework/library/web server that makes you cry tears of joy after finishing your project ahead-of-time when you look at the beautiful code you've written in `[F#]`.
  • WebSocket

    • WebSocket4NET - WebSocket client for .NET 2.0+, Xamarin, Mono, Silverlight, Windows Phone, & WinRT
    • Crossertech - Provides a great set of tools for you to build real-time applications on the Microsoft.NET plattform and much more. **[$]**
  • Other Lists

    • Awesome .NET Core - A collection of awesome .NET core libraries, tools, frameworks and software
    • awesome-ddd - A curated list of Domain-Driven Design (DDD), Command Query Responsibility Segregation (CQRS), Event Sourcing, and Event Storming resources
    • Awesome Unity - A categorized community-driven collection of high-quality awesome Unity assets, projects, and resources.
    • Weekly C# Digest - Weekly email newsletter with manually curated top 5 links from the .NET community.
    • ![CC0
    • Vitali Fokin
  • Serialization

    • F# Data - F# type providers for accessing XML, JSON, CSV and HTML files (based on sample documents) and for accessing WorldBank data
Sub Categories