DEV Community

Cover image for 🔝Top 10 C# Projects on GitHub (December 2020), the trend and indications
David
David

Posted on

🔝Top 10 C# Projects on GitHub (December 2020), the trend and indications

C# remains a popular programming language in 2020. As of December 2020, C# ranks №5 in Tiobe Index, following C, Java, Python and C++

Below are the top 10 C# Projects on GitHub as of December 2020.

Ranking Project Name Stars Forks
1 Shadowsocks-windows 51129 15938
2 PowerShell 23436 3779
3 CodeHub 23092 636
4 Aspnetcore 20354 5783
5 Wox 19137 2067
6 DnSpy 16698 2634
7 V2rayN 16444 3679
8 EShopOnContainers 16098 6775
9 WaveFunctionCollapse 15546 791
10 ShareX 14609 2017

1. Shadowsocks-windows

Shadowsocks is a free and open-source encryption protocol project, widely used to circumvent Internet censorship. Why is it so popular, because it is used by a large population!

GitHub logo shadowsocks / shadowsocks-windows

If you want to keep a secret, you must also hide it from yourself.

[logo] Shadowsocks for Windows

Build Status

中文说明

Features

  1. System proxy configuration
  2. PAC mode and global mode
  3. GeoSite and user rules
  4. Supports HTTP proxy
  5. Supports server auto switching
  6. Supports UDP relay (see Usage)
  7. Supports plugins

Downloads

Download the latest release from release page.

Requirements

.NET Framework 4.8 or higher, Microsoft Visual C++ 2015 Redistributable (x86) .

Basics

  1. Find Shadowsocks icon in the notification tray
  2. You can add multiple servers in servers menu
  3. Select Enable System Proxy menu to enable system proxy. Please disable other proxy addons in your browser, or set them to use system proxy
  4. You can also configure your browser proxy manually if you don't want to enable system proxy. Set Socks5 or HTTP proxy to 127.0.0.1:1080. You can change this port in Servers -> Edit Servers

PAC

  • The PAC rules are generated from the geosite database in v2fly/domain-list-community.
  • Generation modes: whitelist mode and blacklist mode.
  • Domain groups: geositeDirectGroups and…

2. PowerShell

A cross-platform task automation and configuration management framework, consisting of a command-line shell and scripting language. Unlike most shells, which accept and return text, PowerShell is built on top of the .NET Common Language Runtime (CLR), and accepts and returns .NET objects. This fundamental change brings entirely new tools and methods for automation.

GitHub logo PowerShell / PowerShell

PowerShell for every system!

logo PowerShell

Welcome to the PowerShell GitHub Community PowerShell Core is a cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework that works well with your existing tools and is optimized for dealing with structured data (e.g. JSON, CSV, XML, etc.), REST APIs, and object models It includes a command-line shell, an associated scripting language and a framework for processing cmdlets.

Windows PowerShell vs. PowerShell Core

Although this repository started as a fork of the Windows PowerShell code base, changes made in this repository do not make their way back to Windows PowerShell 5.1 automatically This also means that issues tracked here are only for PowerShell Core 6 and higher. Windows PowerShell specific issues should be opened on UserVoice.

New to PowerShell?

If you are new to PowerShell and would like to learn more, we recommend reviewing the getting started documentation.

Get PowerShell

You can download and install a PowerShell…

A good tutorial on Powershell 2020 can be found from the below Youtube video.

3. CodeHub

GitHub logo CodeHubApp / CodeHub

CodeHub is an iOS application written using Xamarin

CodeHub

Gitter

CodeHub is the best way to browse and maintain your GitHub repositories on any iPhone, iPod Touch, and iPad device! Keep an eye on your projects with the ability to view everything from pull requests to commenting on individual file diffs in the latest change set. CodeHub brings GitHub to your finger tips in a sleek and efficient design.

Follow the project on twitter: @CodeHubApp
Feature requests can be made on GitHub
Additional information can be found on the project's webpage

Screenshots

Repository View Slideout Repositories Issues Gists

Contributing

Contributions are absolutely welcome! The project is built on Xamarin, a free C# framework for iOS applications. You'll need to download this to build the project.

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Troubleshooting

I Can't Find My Organization

CodeHub can…

CodeHub

4. Aspnetcore

GitHub logo dotnet / aspnetcore

ASP.NET Core is a cross-platform .NET framework for building modern cloud-based web applications on Windows, Mac, or Linux.

ASP.NET Core

ASP.NET Core is an open-source and cross-platform framework for building modern cloud based internet connected applications, such as web apps, IoT apps and mobile backends. ASP.NET Core apps run on .NET Core, a free, cross-platform and open-source application runtime. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux. Learn more about ASP.NET Core.

Get Started

Follow the Getting Started instructions in the ASP.NET Core docs.

Also check out the .NET Homepage for released versions of .NET, getting started guides, and learning resources.

See the Triage Process document for more information on how we handle incoming issues.

How to Engage, Contribute, and Give Feedback

5. Wox

GitHub logo Wox-launcher / Wox

Launcher for Windows, an alternative to Alfred and Launchy.

WoX

Maintenance Build status GitHub release (latest by date) GitHub Release Date Github All Releases

WoX is a launcher for Windows that simply works. It's an alternative to Alfred and Launchy.

demo

Features

  • Search for everything—applications, UWP, folders, files and more.
  • Use pinyin to search for programs / 支持用 拼音 搜索程序
    • wyy / wangyiyun → 网易云音乐
  • Keyword plugin search g search_term
  • Search youtube, google, twitter and many more
  • Build custom themes at http://www.wox.one/theme/builder
  • Install plugins from http://www.wox.one/plugin
  • Portable mode
  • Auto-complete text suggestion
  • Highlighting of how results are matched during query search

Installation

  • Download from releases.

    • Option 1: download Wox-Full-Installer.*.exe, which include all dependency.
    • Option 2: download Wox.*.exe, which only include wox itself. You may install Everything and Python using below instruction.
  • Windows may complain about security due to code not being signed. This will be fixed later.

  • Requirements:

    • .NET >= 4.6.2 or Windows version >= 10 1607 (Anniversary Update)
    • [Optional] Integrate with everything
      1. Download .exe installer
      2. Use x64 if your…

6. DnSpy

GitHub logo dnSpy / dnSpy

.NET debugger and assembly editor

dnSpy - Latest release

dnSpy is a debugger and .NET assembly editor. You can use it to edit and debug assemblies even if you don't have any source code available. Main features:

  • Debug .NET and Unity assemblies
  • Edit .NET and Unity assemblies
  • Light and dark themes

See below for more features

debug-animated

edit-code-animated

Binaries

https://github.com/dnSpy/dnSpy/releases

Building

git clone --recursive https://github.com/dnSpy/dnSpy.git
cd dnSpy
# or dotnet build
./build.ps1 -NoMsbuild
Enter fullscreen mode Exit fullscreen mode

To debug Unity games, you need this repo too: https://github.com/dnSpy/dnSpy-Unity-mono (or get the binaries from https://github.com/dnSpy/dnSpy/releases/unity)

Debugger

  • Debug .NET Framework, .NET and Unity game assemblies, no source code required
  • Set breakpoints and step into any assembly
  • Locals, watch, autos windows
  • Variables windows support saving variables (eg. decrypted byte arrays) to disk or view them in the hex editor (memory window)
  • Object IDs
  • Multiple processes can be debugged at the same time
  • Break on module load
  • Tracepoints and conditional breakpoints
  • Export/import…

7. V2rayN




8. EShopOnContainers

GitHub logo dotnet-architecture / eShopOnContainers

Cross-platform .NET sample microservices and container based application that runs on Linux Windows and macOS. Powered by .NET Core 3.1, Docker Containers and Azure Kubernetes Services. Supports Visual Studio, VS for Mac and CLI based environments with Docker CLI, dotnet CLI, VS Code or any other code editor.

eShop logo

.NET Microservices Sample Reference Application

Sample .NET Core reference application, powered by Microsoft, based on a simplified microservices architecture and Docker containers.

Azure DevOps - Build Status

Image Status Image Status
Api Gateway (base) Api Gateways base image Shopping Aggregator (Web) Web Shopping Aggregator
Basket API Basket API Shopping Aggregator (Mobile) Mobile Shopping Aggregator
Catalog API Catalog API Web Client (MVC) WebMVC Client
Identity API Identity API Web Client (SPA) WebSPA Client
Location API Location API Web Status (Health) Web Status
Marketing API Marketing API Webhooks API Webhooks API
Ordering API Ordering API Webhooks Client Webhooks demo client
Payment API Payment API

Dev branch contains the latest beta code and their images are tagged with :linux-dev in our Docker Hub

Getting Started

Make sure you have installed and configured docker in your environment. After that, you can run the below commands from the /src/ directory and get started with the eShopOnContainers immediately.

docker-compose build
docker-compose up
Enter fullscreen mode Exit fullscreen mode

You should be able to browse different components of the application by using the below URLs :

Web Status : http://host.docker.internal:5107/
Web MVC :  http://host.docker.internal:5100/

9. WaveFunctionCollapse

GitHub logo mxgmn / WaveFunctionCollapse

Bitmap & tilemap generation from a single example with the help of ideas from quantum mechanics

WaveFunctionCollapse

This program generates bitmaps that are locally similar to the input bitmap.

main collage

main gif

Local similarity means that

  • (C1) Each NxN pattern of pixels in the output should occur at least once in the input.
  • (Weak C2) Distribution of NxN patterns in the input should be similar to the distribution of NxN patterns over a sufficiently large number of outputs. In other words, probability to meet a particular pattern in the output should be close to the density of such patterns in the input.

In the examples a typical value of N is 3.

local similarity

WFC initializes output bitmap in a completely unobserved state, where each pixel value is in superposition of colors of the input bitmap (so if the input was black & white then the unobserved states are shown in different shades of grey). The coefficients in these superpositions are real numbers, not complex numbers, so it doesn't do the…

10. ShareX

GitHub logo ShareX / ShareX

ShareX is a free and open source program that lets you capture or record any area of your screen and share it with a single press of a key. It also allows uploading images, text or other types of files to many supported destinations you can choose from.





Trend analysis

Among these ten projects:

  • ➀ Shadowsocks-windows & ➆ V2rayN are networking utilities, which are popular because of a large population of users. Truly useful tools rock!
  • ➈ WaveFunctionCollapse & ➉ShareX are image/image capture utilities. Truly useful tools rock!
  • ➄ Wox is a desktop utility tool to boost your performance to access your apps. Truly useful tools rock!
  • ➁ PowerShell, ➂CodeHub, ➃ Aspnetcore, ➅ DnSpy & ➇ EShopOnContainers are powerful tools for software developers and architects. Power developer tools rock!

Indications

  • The C# language is especially useful for developing utility tools.
  • C# remain a popular language for developers. With the new introduction of .Net 5, it is anticipated that C# will gain more popularity in cross-platform app development, including but not limited in Mobile, Game, Desktop, Web and other development areas.

Feedback

Any thoughts or comments? If you like it, please upvote or share this article!

Top comments (0)