Networking

Open-source projects categorized as Networking | Edit details
Related topics: #HTTP #Swift #Golang #Network #Go

Top 23 Networking Open-Source Projects

  • GitHub repo OkHttp

    Square’s meticulous HTTP client for the JVM, Android, and GraalVM.

    Project mention: Can anyone suggest me any way to mock API response so that I can test my app? | reddit.com/r/androiddev | 2021-07-24

    Have you tried https://github.com/square/okhttp/tree/master/mockwebserver?

  • GitHub repo Alamofire

    Elegant HTTP Networking in Swift

    Project mention: Using Swift 5.5 Async Await to Fetch REST API | reddit.com/r/swift | 2021-06-01

    I have a prototype on a branch. Right now it's just continuations that wrap the completion handler API and may change significantly over time. The other APIs won't really change until we can rewrite major portions to the new async features.

  • GitHub repo Dubbo

    Apache Dubbo is a high-performance, java based, open source RPC framework.

  • GitHub repo AFNetworking

    A delightful networking framework for iOS, macOS, watchOS, and tvOS.

  • GitHub repo Netty

    Netty project - an event-driven asynchronous network application framework

    Project mention: What is the best java library for networking? | reddit.com/r/java | 2021-07-20

    Netty is a really fast library, but it is a pain to use sometimes. Also, you have to do a lot of the work yourself.

  • GitHub repo libcurl

    A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP. libcurl offers a myriad of powerful features

    Project mention: [HELP] I need to archive my bookmarks (~30,000+) | reddit.com/r/Archiveteam | 2021-07-25

    I did some experimenting and the command-line utility curl can submit a URL to be archived. A simple script could loop through all of your URLs to request they are save. It would be a good idea include a delay between each submission so you don't get hit with rate limiting (a technique sites use to block bad actors who would otherwise overload the site [think denial of service]). I would also suggest doing them in small batches just in case it fails. Start with a batch of 10 an if that works, then try 100, then try 500, etc. That way if it fails it is easier to find where it failed.

  • GitHub repo libuv

    Cross-platform asynchronous I/O

    Project mention: Is nodejs single threaded or multi threaded | reddit.com/r/node | 2021-07-26

    IO is still mostly single threaded. Node.js is based on a library called libuv which handles all the IO.

  • GitHub repo fasthttp

    Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http

    Project mention: Introduction to Go Fiber | dev.to | 2021-06-23

    It is built on top of Fasthttp engine, here are some benchmarks. It also has quite a low memory allocation overhead. For example while writing this article it only took around only ~16mb of memory, which was amazing!

  • GitHub repo Moya

    Network abstraction layer written in Swift.

    Project mention: RetroSwift new library to make API requests | reddit.com/r/swift | 2021-01-26

    What is the advantage of your library over established solutions like Moya or protocol oriented networking approaches?

  • GitHub repo tokio

    A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...

    Project mention: A Rust controller for Kubernetes | dev.to | 2021-07-11

    The lesson is that you can only call async functions from other async functions (and blocks); and main is not async. The easiest path is to bring Tokio, a crate dedicated to async programming. Tokio offers a macro to make main asynchronous.

  • GitHub repo kcptun

    A Stable & Secure Tunnel based on KCP with N:M multiplexing and FEC. Available for ARM, MIPS, 386 and AMD64。KCPプロトコルに基づく安全なトンネル。KCP 프로토콜을 기반으로 하는 보안 터널입니다。

    Project mention: Looking for lowest-latency WebSocket server/library | reddit.com/r/golang | 2021-05-08
  • GitHub repo CocoaAsyncSocket

    Asynchronous socket networking library for Mac and iOS

  • GitHub repo RestKit

    RestKit is a framework for consuming and modeling RESTful web resources on iOS and OS X

  • GitHub repo KCP

    :zap: KCP - A Fast and Reliable ARQ Protocol

    Project mention: How feasible is this idea? Creating a battery run audio transmitter and receiver over TCP/IP | reddit.com/r/esp8266 | 2021-05-30

    I'd consider KCP protocol over TCP, it has 30-40% lower latency at the expense of 20% higher bandwidth.

  • GitHub repo Muduo

    Event-driven network library for multi-threaded Linux server in C++11

  • GitHub repo gRPC

    The Java gRPC implementation. HTTP/2 based RPC

    Project mention: grpc_bench: open-source, objective gRPC benchmark | reddit.com/r/grpc | 2021-04-20

    Small clarification (to my understanding, I'm not a Java Guru) on why Java got on top - those Java implementations use something called Direct Executor. It's super performant when there's no chance of a blocking operation. But if you are to do anything more than echo service, you might be in trouble. Other implementations probably don't suffer from the same constraint. The related discussion can be found in this PR.

  • GitHub repo cilium

    eBPF-based Networking, Security, and Observability

    Project mention: Gopher Gold #20 - Wed Nov 18 2020 | dev.to | 2020-11-17

    cilium/cilium (Go): eBPF-based Networking, Security, and Observability

  • GitHub repo Finagle

    A fault tolerant, protocol-agnostic RPC system

    Project mention: What is the state of frameworks and libraries support to build microservices in scala? | reddit.com/r/scala | 2021-04-16

    Finagle from Twitter

  • GitHub repo uvloop

    Ultra fast asyncio event loop.

    Project mention: Python Concurrency: The Tricky Bits | news.ycombinator.com | 2021-02-18
  • GitHub repo libevent

    Event notification library

    Project mention: Io_uring is not an event system | news.ycombinator.com | 2021-06-17
  • GitHub repo Mongoose

    Embedded Web Server (by cesanta)

    Project mention: Download Html source of a web page in pure c without libraries. | reddit.com/r/C_Programming | 2021-07-10

    If you don't want to use a full on library, how about a single .h and .c implementing much of what you need to do.

  • GitHub repo Proxygen

    A collection of C++ HTTP libraries including an easy to use HTTP server.

    Project mention: cpprestsdk in maintenance mode | reddit.com/r/cpp | 2021-06-08

    If you need an embedded C++ HTTP server then there are plenty of libraries/frameworks (in random order): Crow, RESTinio, Boost.Beast, cpp-httplib, http_backend, Pistache, RestBed, served, proxygen, Simple-Web-Server, drogon, oat++.

  • GitHub repo ZeroMQ

    ZeroMQ core engine in C++, implements ZMTP/3.1

    Project mention: Force static compiling on Linux (GCC) | reddit.com/r/C_Programming | 2021-07-05

    Which part is not C? If you mean the library it is also available in C

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-07-26.

Index

What are some of the best open-source Networking projects? This list will help you:

Project Stars
1 OkHttp 40,413
2 Alamofire 35,996
3 Dubbo 35,824
4 AFNetworking 33,185
5 Netty 27,196
6 libcurl 21,308
7 libuv 17,792
8 fasthttp 15,634
9 Moya 13,178
10 tokio 12,619
11 kcptun 12,502
12 CocoaAsyncSocket 11,996
13 RestKit 10,285
14 KCP 9,905
15 Muduo 9,902
16 gRPC 8,897
17 cilium 8,731
18 Finagle 8,004
19 uvloop 7,913
20 libevent 7,694
21 Mongoose 7,318
22 Proxygen 7,183
23 ZeroMQ 7,085