Skip to content

dotnetcore/Home

Repository files navigation

 

English | 中文

.NET Core Community Home

.NET Core Community (referred to as NCC) is an unofficial, non-profit open source community based on the .NET technology stack. It was established in mid-2016 by a group of young people in conjunction with nearly 100 .NET developers. We hope that through our efforts, we can make the .NET ecosystem more exciting.

The History of NCC

NCC was founded in mid-2016, the original name is ".NET Core China Studying Group". At the same time, we created a QQ Group called "dotNET Core Studying Group".

The original goal of NCC was to translate the documentation of Microsoft ASP.NET Core. We have received a lot of help and encouragement from many people (List of contributors for 2016 translation project). And the works of our translation also provided great convenient for the first Chinese developers who learned ASP.NET Core.

After two years of challenge, after several name adjustments, NCC became an open source community organization with more than one dozen projects and multiple sub-teams.

We have received support from many people, including the sponsorship of JetBrains.

At the beginning of 2019, we tried to cooperate with various local .NET technology communities in China and jointly launched the .NET China Community Joint Meeting (NCJM), and provided the community with the NCC domain name asset 'dotnet-china.com'. We enabled the new domain name 'dotnetcore.xyz' instead.

At the end of 2019, we adopted and launched MEMBER CODE OF CONDUCT. The four new rules and regulations revised and drafted by the community Revision and Drafting Working Group (2019) passed the NCC PMC vote, and in Effective from January 1, 2020.

In 2020, a special year, we have updated the community rules and withstood multiple huge challenges. Member projects have made great progress. Surging has completed the incubation of NCC for a broader prospect and established an independent community. FlubuCore became the first .NET Foundation member project in our community. NCC Alipay SDK completed its historical mission and was archived.

Since 2020, our community has been under attack and defamed by certain extremist technologists and a few self-serving authors of open-source projects. However, NCC has received support from the majority of the technical community and a vast number of developers who have the wisdom and talent to discern the truth. They are the backbone of .NET.

In the years 2023-2024, we will make a magnificent transformation and continue to explore a new future.

We will bring more surprises and achievements to everyone in 2024.

Members' Code of Conduct

In order to build an open, innovative, inclusive and welcoming community, we have published the Code of Conduct for Members.

(It has been updated.)

Repos and Projects

Our project is divided into two phases: the NCC Sandbox Projects phase and the NCC Top-Level Projects phase. When a new project is applied to join NCC and successfully pass the review and complete the preparatory work before joining, the project will automatically enter the NCC Sandbox Projects phase. If you want to apply to join NCC, please read the How to join us section.

Data

  • CanalSharp, An open source .net client for Alibaba Canal. Alibaba Canal is an incremental publish & subscription component based on MySql's binlog. For more detail please visit https://github.com/alibaba/canal/wiki.
  • DotnetSpider (Top-Level), a .NET Standard web crawling library similar to WebMagic and Scrapy. It is a lightweight ,efficient and fast high-level web crawling & scraping framework for .NET.
  • EasyCaching, an open source caching library that contains basic usage and some advanced usages of caching which can help us to handle caching more easier.
  • EntityFrameworkCore.GaussDB (incubation), an Entity Framework Core provider for GaussDB.
  • EntityFrameworkCore.KingbaseES (incubation), an Entity Framework Core provider for KingbaseES.
  • FreeSql, is the ORM in .NET Core, .NET Framework and Xamarin. It supports MySQL, PostgreSQL, SqlServer, Oracle, Sqlite, Firebird, ODBC, 达梦, 瀚高, KingbaseES, 神通, HUAWEI GaussDB and Microsoft Access.
  • GaussDB Driver for .NET, NET Core driver for GaussDB. It is also the basis for the GaussDB Provider for EntityFramework Core.
  • Magicodes Exporter&Importer, a common import and export library for Excel, Word, PDF and HTML.
  • NPOI (Archived with announcement), a .net library for reading and writing MsOffice binary and OOXML file formats.
  • SmartCode, an excellent open source code generator (of cause not only a generates code). It's based on execution flow, supports ETL mode, highly flexible and scalable, also supports custom templates and multiple template styles, and multiple databases.
  • SmartSql, SmartSql provides a progressive development experience with simple connection string configuration to run, XML configuration to decouple SQL and a variety of performance observation methods to make performance problems clear at a glance. SmartSql maintains the same level of performance as Dapper and provides a number of features: dynamic proxy storage/distributed cache/type processor/automatic generation of CUD code/distributed Id generator/performance diagnosis/AOP level of things/caches (memory, distributed cache)/read/write separation/code generator/high performance batch insertion, etc.
  • ShardingCore, a high performance lightweight solution for efcore sharding table and sharding database support read-write-separation.

Application Library

  • AspectCore (Top-Level), an AOP-based cross platform framework for .NET Standard.
  • Natasha, simplify IL operations, optimize the IL programming flow, and write dynamic caches that provide high performance.
  • NCC Collection Extensions, Utilities and extensions for Collections includes Collections.Paginable and so on...
  • WebApiClient, an open source project based on the HttpClient. You only need to define the c# interface and modify the related features to invoke the client library of the remote http interface asynchronously.

Development Framework

  • OSharp, is a rapid development framework based on .NET Core with the latest .NET Core SDK LTS version (currently .NET Core 3.1). The OSharp framework highly automates the following modules of ASP.NET Core: configuration, dependency injection, Logging, caching, entity framework, MVC / WebAPI, identity authentication, permission authorization, etc. OSharp also standardizes a set of business implementation code and operation processes, making the .NET Core framework easier to apply to the development of actual projects.
  • Util, an open source application framework under the .NET Core platform, designed to improve the development efficiency of small teams. It is composed of common helpers, hierarchical architecture design, UI components, third-party component and service interface packages.
  • WTM, a development tool for small and medium-sized back-end management systems. Implement zero-code creation project, zero-code generation management module.

Environment & Tools

  • Alipay SDK (Archived), a third-party Alipay server SDK, based on .NET Standard 2.0 development, provides a more reliable design than the official, but remains consistent with the official APIs.
  • FastGithub (Archived),a GitHub accelerator. Used to solve the problems of GitHub unable to open, unable to load user avatar, unable to upload and download releases, git-clone git-pull git-push failure, etc.
  • FlubuCore (Top-Level), a cross platform build and deployment automation system for building projects and executing deployment scripts using C# code.(Example for FlubuCore)
  • KoobooJson (external), smaller and faster C# JSON serialization tool (construction based on expression tree)
  • NCC Compile Environment, When using the Roslyn library for dynamic compilation, you can introduce the library to provide a dynamic compilation environment.

Infra & Middleware

  • AgileConfig, a lightweight configuration center based on .net core . It is easy to deploy , easy to learn , easy to use.
    • AgileConfig Client - an AgileConfig client based on .NET Standard 2.0, can be run on nfx and core.
  • CAP (Top-Level), a distributed transaction solution in microservice based on eventually consistency, also an eventbus with Outbox pattern.
  • HttpReports, a lightweight APM system based on .NET Core, can be used to quickly build an integrated site of statistics, analysis, charts, monitoring, and distributed tracking in the .NET Core environment. HttpReports applies to ASP.NET Core MVC/WebAPI, is simple to get started and suitable for use in microservice architecture.
  • Mocha (incubation), an application performance monitor tools based on OpenTelemetry, which also provides a scalable platform for observability data analysis and storage.

UI Components

  • BootstrapBlazor, a set of enterprise-class UI components based on Bootstrap and Blazor.

Labs

Laboratory projects will not be included in the members' project directory.

  • BTFindTree (Labs), this project provides efficient data structures for the NCaller project, optimizing search performance using a combination of binary search and bucketing.
  • Papper (Labs), based on Roslyn, it is a wrapper for the syntax tree, making it easier for developers to manipulate the syntax tree.

Translation

Translation projects will not be included in the members' project directory.

Projects that Complete the Incubation Work

BotSharp, SurgingZKWeb

Do you want to be a part of us? The next great NCC project, will be yours. The next section will tell you how to join us.

How to Join Us

Fund management

NCC accepts donations from communities and individuals. All donations will be made public through the Statement-of-Income-and-Expense.md and subject to community supervision.

Donation

When you donate, PLEASE TELL US YOUR NAME AND TO MARK "NCC", thank you.

当你捐赠时,请标注「NCC」,并留下你的名字,万分感激。

All donations will be managed by LIU Haoyang and booked by Alex Lewis.

Thank you for your donation.

Commercial and Political Exclusions

Community Partners and Sponsors

              

WeChat Official Public Account

In 2019, I went out and created the NCC community WeChat public account "OpenNCC". Welcome to subscribe us.

The advertising income in the NCC WeChat public account will be used for the daily operation of the public account, community activities and payment of manuscripts.

Feedback

  • If you having any trouble about NCC Member Projects, please go to the repository of that project and create a new issue.
  • If you having some questions about NCC, you may create an issue for us.
  • The following methods are acceptable:
    • Leave a message in the background of our WeChat account: OpenNCC;
    • Follow us on Twitter: @ncc_community
    • Follow our Telegram Channel: @ncc_radio
    • Join our Reddit Community: r/TheNCC
  • Finally, you can contact us via email: contact#ncc.work (change # to @).

Releases

No releases published

Packages

No packages published