Topics / #async
Async projects on GitHub
Asynchronous programming patterns: promises, event loops, and non-blocking I/O.
As of , the most-starred Async projects on GitHub are You-Dont-Know-JS (184.8K stars), fastapi (103.1K stars) and Scrapling (88.1K stars). GitHub.Locker tracks 108 Async repositories with 2.2M stars combined. The fastest-growing on October 16 was Scrapling, with +201 stars in a day.
Hot right now
Most stars gained in a day · Oct 16
+201Scrapling
D4Vinci/Scrapling · ★ 88.1KScrapling is an adaptive web scraping framework for Python that handles everything from a single HTTP request to a full-scale concurrent crawl, with built-in anti-bot bypass.
+35Ghost-Downloader-3
XiaoYouChR/Ghost-Downloader-3 · ★ 10KGhost Downloader is a cross-platform desktop download manager that handles HTTP, BitTorrent/Magnet, FTP, M3U8, MPEG-DASH and eD2k links, plus video sites like YouTube and Bilibili, all in one app.
+34fastapi
fastapi/fastapi · ★ 103.1KFastAPI is a modern Python web framework for building APIs using standard Python type hints, with automatic data validation and interactive documentation.
+14tokio
tokio-rs/tokio · ★ 33.4KTokio is a runtime for writing reliable, asynchronous applications with Rust: it supplies the scheduling, non-blocking I/O, networking and timers that async Rust programs need.
The all-time top
Top 100 of 108 · by stars
- 184.8K
#1 · getify/You-Dont-Know-JS
You-Dont-Know-JS
A free, open-source book series by Kyle Simpson that dives deep into the core mechanisms of the JavaScript language, covering topics like scope, closures, types, and objects.
- 103.1K
#2 · fastapi/fastapifastapi
FastAPI is a modern Python web framework for building APIs using standard Python type hints, with automatic data validation and interactive documentation.
- 88.1K
#3 · D4Vinci/ScraplingScrapling
Scrapling is an adaptive web scraping framework for Python that handles everything from a single HTTP request to a full-scale concurrent crawl, with built-in anti-bot bypass.
- 4
webpack
66Kwebpack/webpack · JavaScriptWebpack is a module bundler for JavaScript and friends: it packs many modules (JS, CSS, images, JSON, and more) into a few bundled assets for use in the browser.
- 5
query
50.4KTanStack/query · TypeScriptTanStack Query is an async state management library that simplifies fetching, caching, synchronizing, and updating server state in web apps.
- 6
RxJava
48.2KReactiveX/RxJava · JavaRxJava is a Java library (Reactive Extensions for the JVM) for composing asynchronous and event-based programs using observable sequences.
- 7
textual
37.5KTextualize/textual · PythonTextual is a lean application framework for Python: you build text-based user interfaces with a simple Python API, and the finished apps run both in the terminal and in a web browser.
- 8

koa
35.7Kkoajs/koa · JavaScriptKoa is an expressive HTTP middleware framework for Node.js built on ES2017 async functions, designed to make writing web apps and APIs more enjoyable.
- 9

tokio
33.4Ktokio-rs/tokio · RustTokio is a runtime for writing reliable, asynchronous applications with Rust: it supplies the scheduling, non-blocking I/O, networking and timers that async Rust programs need.
- 10

openai-python
31.9Kopenai/openai-python · PythonThis is the official Python library for the OpenAI API, giving convenient programmatic access to OpenAI models like GPT for text, vision, audio and more.
- 11
iced
31.8Kiced-rs/iced · RustIced is a cross-platform GUI library for Rust, focused on simplicity and type-safety and inspired by the Elm architecture.
- 12

rxjs
31.7KReactiveX/rxjs · TypeScriptRxJS is a JavaScript library for composing asynchronous and event-based programs with Observable values. This repo is the platform-based next generation of RxJS, planned for release as RxJS 9.
- 13

spdlog
29.7Kgabime/spdlog · C++spdlog is a very fast C++ logging library. It ships header-only or as a compiled library, and its message formatting is powered by the fmt library.
- 14

python-telegram-bot
29.5Kpython-telegram-bot/python-telegram-bot · Pythonpython-telegram-bot is a Python library that wraps the Telegram Bot API, so you can build Telegram bots in plain Python instead of hand-rolling HTTP calls. It dates back to 2015 and has about 29.5k stars on GitHub.
- 15

celery
29Kcelery/celery · PythonCelery is a distributed task queue for Python: clients put units of work (tasks) on a queue and dedicated worker processes monitor the queue and run them — across threads, machines, even datacenters.
- 16

async
28.1Kcaolan/async · JavaScriptAsync is a utility module with straight-forward, powerful functions for working with asynchronous JavaScript, originally designed for Node.js.
- 17

pingora
27.6Kcloudflare/pingora · RustPingora is a Rust framework by Cloudflare for building fast, reliable, and programmable network services and proxies. It is battle-tested, having served more than 40 million internet requests per second for years.
- 18

axum
27.5Ktokio-rs/axum · Rustaxum is an HTTP routing and request-handling library for Rust with a focus on ergonomics and modularity — the kind of crate you build web services and APIs with.
- 19

mongoose
27.5KAutomattic/mongoose · JavaScriptMongoose is a MongoDB object modeling tool — an ODM for Node.js. You define schemas and work with models that carry validation, defaults, middleware and rich queries, instead of talking to the raw driver.
- 20

libuv
27.3Klibuv/libuv · Clibuv is a multi-platform C support library focused on asynchronous I/O. It was originally built for Node.js and is also used by Luvit, Julia and uvloop.
- 21
localForage
25.8KlocalForage/localForage · JavaScriptlocalForage is a fast and simple storage library for JavaScript: it improves a web app's offline experience by using asynchronous storage (IndexedDB or WebSQL) behind a simple, localStorage-like API.
- 22

Rocket
25.8Krwf2/Rocket · RustRocket is an async web framework for Rust focused on usability, security, extensibility, and speed — you write Rust, and Rocket handles routing and dispatching web requests.
- 23

SDWebImage
25.6KSDWebImage/SDWebImage · Objective-CSDWebImage is an asynchronous image downloader with memory and disk caching for Apple apps, integrated as a category on UI elements like UIImageView and UIButton — you give it a URL and it loads, caches and displays the image.
- 24
colly
25.6Kgocolly/colly · GoColly is a scraping and crawling framework for Go: a clean interface for writing any kind of crawler, scraper or spider that extracts structured data from websites, for things like data mining, processing or archiving.
- 25

actix-web
24.9Kactix/actix-web · RustActix Web is a powerful, pragmatic and extremely fast web framework for Rust, used to build web servers, APIs and realtime services.
- 26

loguru
24.1KDelgan/loguru · PythonLoguru is a Python library that makes logging in Python simple and pleasant — a ready-to-use logger you import and start using immediately, made for people who otherwise default to print() instead.
- 27

guzzle
23.4Kguzzle/guzzle · PHPGuzzle is an extensible PHP HTTP client library that makes it easy to send HTTP requests and trivial to integrate with web services.
- 28

gitui
22.6Kgitui-org/gitui · RustGitUI is a blazing-fast terminal UI for git written in Rust: the comfort of a git GUI, but running entirely in your terminal.
- 29

redux-saga
22.4Kredux-saga/redux-saga · JavaScriptIt's a Redux middleware library for managing side effects — async work like data fetching or impure stuff like browser-cache access. Each saga is modelled as a separate thread in your app, solely responsible for those side effects.
- 30

lazy.nvim
21.7Kfolke/lazy.nvim · Lualazy.nvim is a modern plugin manager for Neovim. It installs and updates your plugins, shows them in a built-in UI, and keeps startup fast through automatic caching, bytecode compilation and lazy-loading.
- 31

ava
20.8Kavajs/ava · JavaScriptAVA is a test runner for Node.js: it runs your tests with a concise API, detailed error output and thread isolation, so you can develop with confidence.
- 32

bluebird
20.5Kpetkaantonov/bluebird · JavaScriptBluebird is a fully featured Promise library for JavaScript focused on performance and rich async utilities, created before native Promises had all these features.
- 33

xi-editor
19.8Kxi-editor/xi-editor · RustAn attempt to build a high-quality text editor with modern software engineering: a Rust back-end aiming for extreme performance, reliability and easy customization.
- 34

GHunt
19.7Kmxrch/GHunt · PythonGHunt is an offensive Google framework geared toward OSINT — collecting intelligence around Google — and its authors note that any Google-related use is possible.
- 35

RxJS
19.3KReactive-Extensions/RxJS · JavaScriptRxJS (Reactive Extensions for JavaScript) is a set of libraries for composing asynchronous and event-based programs using observable sequences and fluent, Array#extras-style query operators.
- 36
swoole-src
18.9Kswoole/swoole-src · C++Swoole is an event-driven, asynchronous, coroutine-based concurrency library for PHP, built for high performance.
- 37

mysql
18.6Kmysqljs/mysql · JavaScriptA pure Node.js driver for MySQL that implements the MySQL protocol directly in JavaScript, with no native bindings to compile.
- 38

Dapper
18.4KDapperLib/Dapper · C#Dapper is a simple object mapper for .NET - a NuGet library that adds extension methods to your ADO.NET connections, so you run SQL and get rows mapped straight to objects. It was originally built for and by Stack Overflow.
- 39

fastapi-best-practices
18.2Kzhanymkanov/fastapi-best-practicesA curated collection of best practices and conventions for building FastAPI applications, based on lessons learned building production systems at a startup.
- 40

blog_os
17.8Kphil-opp/blog_os · HTMLSource code for the 'Writing an OS in Rust' blog series at os.phil-opp.com - step-by-step posts that build a small x86-64 operating system kernel in Rust.
- 41

redux-thunk
17.7Kreduxjs/redux-thunk · TypeScriptA small middleware for Redux that lets action creators return a function instead of a plain action object. That function can run async logic or decide whether and when to dispatch.
- 42

apprise
17.6Kcaronc/apprise · PythonApprise is a Python library and CLI for sending push notifications to almost every popular service — Telegram, Discord, Slack, Amazon SNS, Gotify and many more — through one common URL-based syntax.
- 43

sqlx
17.6Ktransact-rs/sqlx · RustSQLx is an async, pure Rust SQL toolkit for talking to databases, with compile-time checked queries and no DSL. It supports PostgreSQL, MySQL, MariaDB, and SQLite.
- 44

Android-Universal-Image-Loader
16.8Knostra13/Android-Universal-Image-Loader · JavaUniversal Image Loader (UIL) is a Java library for Android that loads, caches and displays images. It offers lots of configuration options and fine control over the loading and caching process.
- 45

aiohttp
16.6Kaio-libs/aiohttp · Pythonaiohttp is an asynchronous HTTP client and server framework built on asyncio: one Python package for making HTTP requests and for building web applications, with WebSockets supported out of the box.
- 46

react-loadable
16.5Kjamiebuilds/react-loadable · JavaScriptA small React library that gives you a higher-order component for loading components asynchronously with dynamic imports, which makes code-splitting a React app simple.
- 47

node-lessons
16.4Kalsotang/node-lessons · JavaScriptA free, hands-on Node.js course (titled 'Node.js 包教不包会' — roughly 'Node.js: Taught, Not Guaranteed') by alsotang, built as a series of practical lessons rather than a textbook.
- 48

hyper
16.4Khyperium/hyper · Rusthyper is an HTTP library for Rust. It ships both client and server APIs, supporting HTTP/1 and HTTP/2.
- 49

nicegui
16.3Kzauberzeug/nicegui · PythonNiceGUI is an easy-to-use, Python-based UI framework that shows up in your web browser, letting you build buttons, dialogs, 3D scenes, plots, dashboards and more without writing frontend code yourself.
- 50

muduo
16.3Kchenshuo/muduo · C++Muduo is a multithreaded C++ network library based on the reactor pattern, built for writing high-performance, event-driven servers on Linux.
- 51

discord.py
16.2KRapptz/discord.py · PythonA Python library for talking to the Discord API: you write your bot in Python and discord.py handles the low-level API work for you.
- 52

httpx
15.6Kencode/httpx · PythonHTTPX is a fully featured HTTP client library for Python 3, with a broadly requests-compatible API, HTTP/1.1 and HTTP/2 support, and both sync and async interfaces. It also ships with an integrated command-line client.
- 53

q
15Kkriskowal/q · JavaScriptQ is a promise library for JavaScript: a promise is an object standing in for a function's eventual return value or thrown exception, so async code can be written without nested callback pyramids.
- 54
got
15Ksindresorhus/got · TypeScriptGot is a human-friendly and powerful HTTP request library for Node.js, offering a Promise API, streams, pagination, caching, retries, hooks and more.
- 55

pansou
14.9Kfish2018/pansou · GoPanSou is a high-performance API service for searching netdisk (cloud drive) share links. It concurrently searches Telegram channels and custom plugins, then classifies and ranks the results by drive type.
- 56

rust-by-practice
14.8Korigin-brain/rust-by-practice · RustA free online book of Rust exercises, examples, and practices designed to make you comfortable with Rust by writing and running real code instead of just reading theory.
- 57

vert.x
14.7Keclipse-vertx/vert.x · JavaVert.x Core is a toolkit for building reactive, event-driven applications on the JVM, providing low-level support for HTTP, TCP, file system access, and more.
- 58
ktor
14.5Kktorio/ktor · KotlinKtor is an asynchronous framework for creating microservices, web applications and more, written in Kotlin from the ground up.
- 59

workflow
14.4Ksogou/workflow · C++Sogou C++ Workflow is an enterprise-grade C++ engine for asynchronous networking and parallel computing, used internally by Sogou to power search, cloud input method, and ad services, handling billions of requests daily.
- 60

supertest
14.4Kforwardemail/supertest · JavaScriptSupertest is a library for testing Node.js HTTP servers using a fluent, chainable API built on top of superagent.
- 61

drogon
14.3Kdrogonframework/drogon · C++Drogon is an open-source, MIT-licensed C++14/17/20 HTTP application framework for building web application server programs in C++ — from REST APIs to server-rendered sites and WebSocket apps.
- 62

PromiseKit
14.2Kmxcl/PromiseKit · SwiftPromiseKit is a complete promises implementation for Swift and Objective-C that simplifies asynchronous programming, so your async code ends up clearer, more readable and easier to master.
- 63

ale
14Kdense-analysis/ale · Vim ScriptALE (Asynchronous Lint Engine) is a Vim/Neovim plugin that lints your code asynchronously as you type and can fix files, acting as a Language Server Protocol client for things like completion, go-to-definition, and hover info.
- 64

kotlinx.coroutines
13.8KKotlin/kotlinx.coroutines · Kotlinkotlinx.coroutines is Kotlin's official library for writing asynchronous, non-blocking code using coroutines, with multiplatform support for JVM, JS, Native and Wasm.
- 65

requests-html
13.8Kpsf/requests-html · PythonRequests-HTML is a Python library for parsing and scraping HTML pages, built on top of the Requests library, adding jQuery-style CSS selectors, XPath support, and full JavaScript rendering.
- 66

redis-py
13.7Kredis/redis-py · Pythonredis-py is the official Python client for the Redis key-value store — the interface your Python code uses to talk to a Redis server.
- 67

scalene
13.5Kplasma-umass/scalene · PythonScalene is a high-performance CPU, GPU, and memory profiler for Python. It is also the first profiler to add AI-powered optimization proposals, via providers like OpenAI, Azure, Bedrock, or local Ollama models.
- 68

dataloader
13.4Kgraphql/dataloader · JavaScriptDataLoader is a generic utility for a Node.js application's data fetching layer that batches and caches requests to backends (like databases or web services), reducing the number of round-trips needed.
- 69

AsyncDisplayKit
13.3Kfacebookarchive/AsyncDisplayKit · Objective-C++AsyncDisplayKit (ASDK) is an iOS framework for smooth asynchronous user interfaces: it moves expensive UI work — image decoding, text sizing and rendering, layout — off the main thread so the app keeps responding to the user.
- 70
node-postgres
13.2Kbrianc/node-postgres · JavaScriptnode-postgres (pg) is a non-blocking PostgreSQL client library for Node.js — pure JavaScript with optional native libpq bindings. Your JS code uses it to connect to, query, and stream data from a PostgreSQL database.
- 71

nock
13.1Knock/nock · JavaScriptNock is a Node.js library that mocks HTTP servers so you can test code that performs HTTP requests without hitting a real network.
- 72

requirejs
12.9Krequirejs/requirejs · JavaScriptRequireJS is a file and module loader for JavaScript, optimized for use in the browser (including Web Workers) but also usable in environments like Rhino and Node.
- 73

windows-rs
12.8Kmicrosoft/windows-rs · Rustwindows-rs is Microsoft's official collection of Rust crates that expose Windows APIs, from COM and WinRT support to system services and UI, letting Rust programs call into the Windows platform.
- 74

comlink
12.8KGoogleChromeLabs/comlink · TypeScriptComlink is a tiny library (~1.1kB) that provides an RPC implementation over postMessage for WebWorkers and ES6 Proxies, so you can use an object from another thread as if it were local instead of manually handling postMessage.
- 75
starlette
12.7KKludex/starlette · PythonStarlette is a lightweight ASGI framework and toolkit for building async web services in Python - small, production-ready, and with few hard dependencies.
- 76

concurrentqueue
12.5Kcameron314/concurrentqueue · C++moodycamel::ConcurrentQueue is an industrial-strength, lock-free multi-producer multi-consumer queue for C++11.
- 77
grpc-rust
12.5Kgrpc/grpc-rust · Rusttonic — a native Rust gRPC client and server implementation. It runs over HTTP/2 with first-class async/await support and is built as a core building block for production systems written in Rust.
- 78

libevent
12Klibevent/libevent · CLibevent is a C library that provides an asynchronous event notification API, so programs can react to file descriptor readiness, timers, and signals without writing their own platform-specific event loop.
- 79

uvloop
11.9KMagicStack/uvloop · Cythonuvloop is a fast, drop-in replacement for Python's built-in asyncio event loop, built on top of the libuv library.
- 80

reqwest
11.9Kseanmonstar/reqwest · RustReqwest is an easy and powerful HTTP client library for Rust — ergonomic and batteries-included, so the common things an HTTP client needs work out of the box.
- 81

co
11.8Ktj/co · JavaScriptco is a small JavaScript library for Node.js that gives you generator-based control flow: you write async, non-blocking code that reads like normal sequential code, with promises underneath.
- 82
jinja
11.8Kpallets/jinja · PythonJinja is a fast, expressive, extensible template engine for Python: you write placeholders in a template using Python-like syntax, then pass it data to render a final document such as HTML.
- 83

UniTask
11.3KCysharp/UniTask · C#UniTask is a C# library that adds an efficient, allocation-free async/await implementation for Unity, letting you await Unity operations and coroutines directly.
- 84

gnet
11.2Kpanjf2000/gnet · Gognet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go, built on epoll and kqueue to work at the transport layer with TCP, UDP, and Unix Domain Socket.
- 85

orleans
10.9Kdotnet/orleans · C#Orleans is a cross-platform .NET framework for building robust, scalable distributed applications — from a single on-premises server up to globally distributed, highly available cloud services. It's often referred to as 'Distributed .NET'.
- 86

rq
10.7Krq/rq · PythonRQ (Redis Queue) is a simple Python library for putting jobs on a queue and processing them in the background with worker processes, backed by Redis or Valkey.
- 87

micro
10.6Kvercel/micro · TypeScriptMicro is a Node.js toolkit for building asynchronous HTTP microservices: you write a single async function and Micro turns it into a tiny, fast HTTP server.
- 88

ollama-python
10.6Kollama/ollama-python · PythonThis is the official Python library for Ollama, giving Python 3.8+ projects an easy way to call a local or cloud Ollama server to run large language models.
- 89

android-async-http
10.6Kandroid-async-http/android-async-http · JavaAn asynchronous, callback-based HTTP client for Android, built on top of Apache's HttpClient libraries.
- 90
conc
10.4Ksourcegraph/conc · Goconc is a Go library — a 'toolbelt' for structured concurrency that makes common concurrent patterns in Go easier and safer than raw goroutines and sync primitives.
- 91

warp
10.4Kseanmonstar/warp · Rustwarp is a super-easy, composable web server framework for Rust, promising 'warp speeds'.
- 92

Hangfire
10.2KHangfireIO/Hangfire · C#Hangfire is a library for .NET and .NET Core that lets you run fire-and-forget, delayed, and recurring background jobs inside your application, without needing a Windows Service or a separate worker process.
- 93
vue-resource
10Kpagekit/vue-resource · JavaScriptvue-resource is the HTTP client plugin for Vue.js: it adds services for making web requests over XMLHttpRequest or JSONP and handling the responses inside a Vue app.
- 94

Ghost-Downloader-3
10KXiaoYouChR/Ghost-Downloader-3 · PythonGhost Downloader is a cross-platform desktop download manager that handles HTTP, BitTorrent/Magnet, FTP, M3U8, MPEG-DASH and eD2k links, plus video sites like YouTube and Bilibili, all in one app.
- 95
Jellyfish
6.7KForget-C/Jellyfish · PythonJellyfish is an end-to-end production workspace for making AI-generated short dramas, covering everything from script input to storyboarding, asset consistency, shot preparation, video generation, and export.
- 96

iSponsorBlockTV
6.5Kdmunozv04/iSponsorBlockTV · PythoniSponsorBlockTV is a self-hosted app that connects to YouTube apps running on TVs and streaming devices, then automatically skips sponsor segments and similar annotated parts using the SponsorBlock API, and can mute or auto-press 'Skip Ad' on YouTube ads.
- 97
topcoat
6.1Ktokio-rs/topcoat · RustTopcoat is a batteries-included, modular Rust framework for building full-stack web apps, where components render on the server and can query the database directly.
- 98
telemt
5.7Ktelemt/telemt · RustTelemt is a fast, secure, feature-rich MTProxy server for Telegram, built in Rust with Tokio, implementing the official MTProto proxy algorithm plus extra production-ready features.
- 99

OpenClaw-RL
5.7KGen-Verse/OpenClaw-RL · PythonOpenClaw-RL is a fully asynchronous reinforcement learning framework that turns everyday conversations with an agent into training signals, letting you train a personalized OpenClaw agent just by talking to it, or train general agents for terminal, GUI, SWE, and tool-call tasks.
- 100

zenc
4.3Kzenc-lang/zenc · CZen C is a modern systems programming language with high-level ergonomics (type inference, pattern matching, generics, traits, async/await) that compiles to human-readable GNU C/C11 while maintaining 100% C ABI compatibility.
Showing the 100 most-starred of 108. See every one in the catalog.
Related topics
Often tagged together