/awesome-dotnet-core

A collection of awesome .NET core libraries, tools, frameworks and software

Awesome .NET Core Awesome

A collection of awesome .NET Core frameworks, libraries, tools, resources and software.

Inspired by awesome, awesome-dotnet, awesome-nodejs, frontend-dev-bookmarks.

Contributions are always welcome! Please take a look at the contribution guidelines pages first. We accept proprietary and commercial software too.

Thanks to all contributors, you're awesome and wouldn't be possible without you! The goal is to build a categorized community-driven collection of very well-known resources.

Contents

General

  • ASP.NET Core Documentation - The official ASP.NET Core documentation site.
  • .NET Core Documentation - Home of the technical documentation for .NET Core, C#, F# and Visual Basic, including basic concepts, getting started instructions, tutorials and samples.
  • .NET Core SDK - .NET Core SDK is a general purpose development platform maintained by Microsoft and the .NET community on GitHub.
  • .NET Platform Standard - The differrent between the old version and the new version of .NET.

Frameworks, Libraries and Tools

API

Application Frameworks

  • ASP.NET MVC - A model view controller framework for building dynamic web sites with clean separation of concerns, including the merged MVC, Web API, and Web Pages w/ Razor.
  • ExtCore - A Free, open source and cross-platform framework for creating modular and extendable web applications based on ASP.NET Core 1.0.
  • grpc - A Remote Procedure Calls (RPCs) provide a useful abstraction for building distributed applications and services. The libraries in this repository provide a concrete implementation of the gRPC protocol, layered over HTTP/2. These libraries enable communication between clients and servers using any combination of the supported languages.
  • Nancy - A lightweight, low-ceremony, framework for building HTTP based services on .Net and Mono.

Application Templates

  • ASP.NET MVC Boilerplate - A professional ASP.NET MVC template 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.

Authentication and Authorization

Build Automation

Bundling and Minification

  • BundlerMinifier - A Visual Studio extension that let's you configure bundling and minification of JS, CSS and HTML files.
  • Smidge - A lightweight runtime CSS/JavaScript file minification, combination, compression & management library for ASP.Net Core.

Caching

Cryptography

  • BouncyCastle PCL - The Bouncy Castle Crypto package is a C# implementation of cryptographic algorithms and protocols.

CMS

  • OrchardCMS2 - An implementation of Orchard CMS in ASP.NET Core (also known as DNX).
  • Platformus - A free, open source and cross-platform CMS based on ASP.NET Core 1.0 and ExtCore framework.
  • SimpleContent - A simple, yet flexible content and blog engine for ASP.NET Core that can work with or without a database.

Code Analysis and Metrics

  • OpenCover - A code coverage tool for .NET 2 and above (WINDOWS OS only), support for 32 and 64 processes with both branch and sequence points.

Database Drivers

  • LiteDB - A .NET NoSQL Document Store in a single data file - http://www.litedb.org. work-around for dotnetcore at #219
  • MongoDB.Driver - .NET Driver for MongoDB. Stable version only works for 4.5.x, but beta available for .NET Core 1.0
  • Neo4jClient - A .NET client binding for Neo4j.
  • npgsql - A .NET data provider for PostgreSQL. It allows any program developed for .NET framework to access a PostgreSQL database server. It is implemented in 100% C# code. PostgreSQL versions since 9.1 are officially supported, others may work. http://www.npgsql.org
  • ravendb - A linq enabled document database for .NET.
  • RethinkDb.Driver - A C#/.NET RethinkDB driver with 100% ReQL API coverage.

E-Commerce and Payments

  • SimplCommerce - A super simple ecommerce system built on .NET Core.

Graphics

Functional Reactive Programming

IDE

  • rider - A cross-platform C# IDE based on the IntelliJ platform and ReSharper.
  • Omnisharp - a family of Open Source projects, each with one goal: To enable a great .NET experience in YOUR editor of choice.
  • Visual Studio Code - A new type of tool that combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle. Code provides comprehensive editing and debugging support, an extensibility model, and lightweight integration with existing tools.
  • Visual Studio Community - A free editor for individual developers, open source projects, academic research, education, and small professional teams.

Internationalization

IOC

  • Autofac - An addictive .NET IoC container.
  • DryIoc - A fast, small, full-featured IoC Container for .NET.
  • LightInject - An ultra lightweight IoC container http://www.lightinject.net.
  • SimpleInjector - An easy, flexible, and fast Dependency Injection library that promotes best practice to steer developers towards the pit of success.
  • StructureMap - A Dependency Injection/Inversion of Control tool for .NET.

Logging

Mail

  • MailKit - A cross-platform .NET library for IMAP, POP3, and SMTP.
  • PreMailer.Net - C# library that moves your stylesheets to inline style attributes, for maximum compatibility with E-mail clients.
  • MimeKit - A cross-platform .NET MIME creation and parser library with support for S/MIME, PGP, DKIM, TNEF and Unix mbox spools.

Misc

  • AutoMapper - A convention-based object-object mapper in .NET.
  • Castle.Core - Castle Core, including Castle DynamicProxy, Logging Services and DictionaryAdapter http://www.castleproject.org.
  • CommonMark.NET - An implementation of CommonMark specification in C# for converting Markdown documents to HTML.
  • consuldotnet - A .NET API for Consul.
  • datatables - A Microsoft Asp.Net server-side support and helpers for jQuery DataTables.
  • Docker.DotNet - A .NET (C#) Client Library for Docker API.
  • FluentValidation - A small validation library for .NET that uses a fluent interface and lambda expressions for building validation rules.
  • markdig - A fast, powerfull, CommonMark compliant, extensible Markdown processor for .NET.
  • Microphone - A lightweight framework to run self hosting REST services using Web Api or NancyFx ontop of a Consul or ETCD cluster.
  • NReco.LambdaParser - A parses string expressions (formulas, methods calls, conditions) to LINQ expression tree that can be compiled to lambda and evaluated.
  • NReco.PivotData - An in-memory data cube with OLAP operations and PivotTable data model.
  • reCAPTCHA - A reCAPTCHA 2.0 for ASPNET Core.
  • Polly - Polly is a .NET 3.5 / 4.0 / 4.5 / PCL library that allows developers to express transient exception and fault handling policies such as Retry, Retry Forever, Wait and Retry or Circuit Breaker in a fluent manner.
  • Scrutor - An assembly scanning extensions for Microsoft.Extensions.DependencyInjection.

ORM

  • Entity Framework Core - A familiar developer experience to previous versions of EF, including LINQ, POCO, and Code First support.
  • Dapper - A simple object mapper for .NET.
  • Dapper-FluentMap - Provides a simple API to fluently map POCO properties to database columns when using Dapper.
  • Dommel - Simple CRUD operations for Dapper.
  • NoDb - A "no database" file system storage for .NET Core/ASP.NET Core because not every project needs a database.
  • NReco.Data - A lightweight provider-independent DAL for SQL commands generation, CRUD operations and simple POCO mapping.
  • yessql - A .NET document database working on any RDBMS.
  • Limebean - A Hybrid-ORM, designed to be simple to use and not totally hide SQL, while having all the nice things you expect from an ORM. Inspired by RedBeanPHP.

Profiling

  • Glimpse - A lightweight, open-source, real-time diagnostics and insights profiler for .NET.

Queue and Messaging

Scheduler and Job

SDKs

Security

  • jose-jwt - Library for processing JOSE objects (JWT, JWA, JWS and related).
  • Security - Middleware for security and authorization of web apps.

Searching

  • Elasticsearch.Net & NEST - A repository for both NEST and Elasticsearch.Net, the two official elasticsearch .NET clients.
  • ElasticsearchCRUD - Elasticsearch .NET API.
  • AngleSharp - The ultimate angle brackets parser library. It parses HTML5, MathML, SVG and CSS to construct a DOM based on the official W3C specification. Comparable to beautifulsoup4 of python.

Serialization

Testing

  • Bogus - A simple and sane fake data generator for C#. Based on and ported from the famed faker.js.
  • GenFu - A library you can use to generate realistic test data.
  • FakeItEasy - The easy mocking library for .NET
  • FluentAssertions - A set of .NET extension methods that allow you to more naturally specify the expected outcome of a TDD or BDD-style test.
  • moq.netcore - A most popular and friendly mocking framework for .NET.
  • MSpec - Popular testing framework for writing BDD-style tests
  • MyTested.AspNetCore.Mvc - A fluent testing framework for ASP.NET Core MVC.
  • Netling - Netling is a load tester client for easy web testing.
  • nunit - A NUnit test runner for .NET Core.
  • shouldly - A Should testing for .NET - the way Asserting Should be! http://shouldly.readthedocs.org/en/latest
  • SpecFlow - A pragmatic BDD solution for .NET. It uses the Gherkin specification language and integrates to Visual Studio.
  • TestStack.BDDfy - A BDDfy is the simplest BDD framework EVER!
  • xunit - A free, open source, community-focused unit testing tool for the .NET Framework.

Web Framework

  • ReactJS.NET - .NET library for JSX compilation and server-side rendering of React components.

Web Socket

Windows Service

  • Topshelf - An easy service hosting framework for building Windows services using .NET. only works for 4.5.x

Starter Kits

  • ASP.NET Core Starter Kit - An opinionated boilerplate for web development based on .NET Core, Kestrel, GraphQL on the backend and Babel, Webpack, React and Redux on the frontend. This boilerplate comes in both C# and F# flavors.
  • ASP.NET Boilerplate - An ASP.NET Boilerplate is a starting point for new modern web applications using best practices and most popular tools. It's aimed to be a SOLID model, a general-purpose application framework and a project template. Still using framework 4.5.2
  • saaskit - A developer toolkit for building SaaS applications.

Sample Projects

  • AlbumViewerVNext - West Wind Album Viewer ASP.NET 5 Sample.
  • allReady - an open-source solution focused on increasing awareness, efficiency and impact of preparedness campaigns as they are delivered by humanitarian and disaster response organizations in local communities. http://www.htbox.org/projects/allready
  • AspNet5GeoElasticsearch - An ASP.NET Core MVC Geo Elasticsearch Swashbuckle Swagger.
  • cloudscribe - ASP.NET Core Multi-tenant web application foundation.
  • DotNetClub - A tiny club written in Asp.Net Core.
  • Entropy - A chaotic experimental playground for new features and ideas - check here for small and simple samples for individual features.
  • magazine-website - A magazine website (using dotnetcore, aspnetcore, efcore) with DDD, CQRS, microservices, asynchronous programming applied.
  • MegaMine - An Open source mining solution that helps miners in extracting Gold, Quartz, Granite etc. This solution is built using ASP.NET Core and AngularJS utilizing multiple light weight components in a Microservices way.
  • [minicompiler](Minification, bundling and compiling sample) - Minification, bundling and compiling sample.
  • MusicStore - Sample MusicStore application that uses MVC and Entity Framework.
  • ReactiveTraderCloud - A real-time trading platform demo showcasing reactive programming principles applied across the full application stack.

Articles

License

CC0

To the extent possible under law, thangchung has waived all copyright and related or neighboring rights to this work.