<img width="500" height="350" src="media/logo.svg" alt="Awesome">
<br>
<br>
<br>
<br>
<div>
<sub>Check out my macOS app</sub>
<br>
<h2>
<a href="https://sindresorhus.com/menu-bar-spacing">Menu Bar Spacing</a>
<br>
<sup>Customize the gap between menu bar items on macOS</sup>
</h2>
</div>
<br>
<br>
<br>
<br>
<hr>
<p>
<p>
<sup>
<a href="https://github.com/sponsors/sindresorhus">My open source work is supported by the community</a>
</sup>
</p>
<sup>Special thanks to:</sup>
<br>
<br>
<a href="https://workos.com/?utm_campaign=github_repo&utm_medium=referral&utm_content=awesome&utm_source=github">
<div>
<img src="https://sindresorhus.com/assets/thanks/workos-logo-white-bg.svg" width="200" alt="WorkOS">
</div>
<b>Your app, enterprise-ready.</b>
<div>
<sub>Start selling to enterprise customers with just a few lines of code.</sub>
<br>
<sup>Add Single Sign-On (and more) in minutes instead of months.</sup>
</div>
</a>
<br>
<br>
<a href="https://transloadit.com?utm_source=sindresorhus&utm_medium=referral&utm_campaign=sponsorship&utm_content=awesome">
<picture>
<source width="340" media="(prefers-color-scheme: dark)" srcset="https://sindresorhus.com/assets/thanks/transloadit-logo-dark.svg">
<source width="340" media="(prefers-color-scheme: light)" srcset="https://sindresorhus.com/assets/thanks/transloadit-logo.svg">
<img width="340" src="https://sindresorhus.com/assets/thanks/transloadit-logo.svg" alt="Transloadit logo">
</picture>
</a>
<br>
<br>
<br>
<a href="https://logto.io/?ref=sindre">
<div>
<picture>
<source width="200" media="(prefers-color-scheme: dark)" srcset="https://sindresorhus.com/assets/thanks/logto-logo-dark.svg?x">
<source width="200" media="(prefers-color-scheme: light)" srcset="https://sindresorhus.com/assets/thanks/logto-logo-light.svg?x">
<img width="200" src="https://sindresorhus.com/assets/thanks/logto-logo-light.svg?x" alt="Logto logo">
</picture>
</div>
<b>The better identity infrastructure for developers</b>
<div>
<sup>Logto is an open-source Auth0 alternative designed for every app.</sup>
</div>
</a>
<br>
<br>
<a href="https://encore.dev?utm_campaign=github_repo&utm_medium=referral&utm_content=sindre&utm_source=github">
<div>
<picture>
<source width="230" media="(prefers-color-scheme: dark)" srcset="https://sindresorhus.com/assets/thanks/encore-logo-dark.svg">
<source width="230" media="(prefers-color-scheme: light)" srcset="https://sindresorhus.com/assets/thanks/encore-logo-light.svg">
<img width="230" src="https://sindresorhus.com/assets/thanks/encore-logo-light.svg" alt="Encore logo">
</picture>
</div>
<b>The development platform for building type-safe distributed systems</b>
<div>
<sup>End-to-end tooling from local development to automated DevOps and infrastructure in your AWS/GCP.</sup>
</div>
</a>
<br>
<br>
<a href="https://nitric.io/?utm_campaign=github_repo&utm_medium=referral&utm_content=sindresorhus&utm_source=github">
<div>
<img width="230" src="https://sindresorhus.com/assets/thanks/nitric-logo.svg" alt="nitric logo">
</div>
<b>Effortless backends with infrastructure from code</b>
<div>
<sup>An open-source framework that supports any programming language, cloud provider, or deployment automation tool.</sup>
</div>
</a>
<br>
<br>
<br>
</p>
<hr>
<br>
<br>
<br>
<br>
<a href="awesome.md">What is an awesome list?</a>
<a href="contributing.md">Contribution guide</a>
<a href="create-list.md">Creating a list</a>
<a href="https://twitter.com/awesome__re">Twitter</a>
Just type <a href="https://awesome.re"><code>awesome.re</code></a> to go here. Check out my <a href="https://sindresorhus.com/apps">apps</a> and follow me on <a href="https://twitter.com/sindresorhus">Twitter</a>.
Contents
Platforms
- Node.js - Async non-blocking event-driven JavaScript runtime built on Chrome's V8 JavaScript engine.
- Frontend Development
- iOS - Mobile operating system for Apple phones and tablets.
- Android - Mobile operating system developed by Google.
- IoT & Hybrid Apps
- Electron - Cross-platform native desktop apps using JavaScript/HTML/CSS.
- Cordova - JavaScript API for hybrid apps.
- React Native - JavaScript framework for writing natively rendering mobile apps for iOS and Android.
- Xamarin - Mobile app development IDE, testing, and distribution.
- Linux
- Containers
- eBPF - Virtual machine that allows you to write more efficient and powerful tracing and monitoring for Linux systems.
- Arch-based Projects - Linux distributions and projects based on Arch Linux.
- AppImage - Package apps in a single file that works on various mainstream Linux distributions.
- macOS - Operating system for Apple's Mac computers.
- watchOS - Operating system for the Apple Watch.
- JVM
- Salesforce
- Amazon Web Services
- Windows
- IPFS - P2P hypermedia protocol.
- Fuse - Mobile development tools.
- Heroku - Cloud platform as a service.
- Raspberry Pi - Credit card-sized computer aimed at teaching kids programming, but capable of a lot more.
- Qt - Cross-platform GUI app framework.
- WebExtensions - Cross-browser extension system.
- Smart TV - Create apps for different TV platforms.
- GNOME - Simple and distraction-free desktop environment for Linux.
- KDE - A free software community dedicated to creating an open and user-friendly computing experience.
- .NET
- Core
- Roslyn - Open-source compilers and code analysis APIs for C# and VB.NET languages.
- Amazon Alexa - Virtual home assistant.
- DigitalOcean - Cloud computing platform designed for developers.
- Flutter - Google's mobile SDK for building native iOS and Android apps from a single codebase written in Dart.
- Home Assistant - Open source home automation that puts local control and privacy first.
- IBM Cloud - Cloud platform for developers and companies.
- Firebase - App development platform built on Google Cloud.
- Robot Operating System 2.0 - Set of software libraries and tools that help you build robot apps.
- Adafruit IO - Visualize and store data from any device.
- Cloudflare - CDN, DNS, DDoS protection, and security for your site.
- Actions on Google - Developer platform for Google Assistant.
- ESP - Low-cost microcontrollers with WiFi and broad IoT applications.
- Deno - A secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust.
- DOS - Operating system for x86-based personal computers that was popular during the 1980s and early 1990s.
- Nix - Package manager for Linux and other Unix systems that makes package management reliable and reproducible.
- Integration - Linking together different IT systems (components) to functionally cooperate as a whole.
- Node-RED - A programming tool for wiring together hardware devices, APIs, and online services.
- Low Code - Allowing business professionals to address their needs on their own with little to no coding skills.
- Capacitor - Cross-platform open source runtime for building Web Native apps.
- ArcGIS Developer - Mapping and location analysis platform for developers.
- Bluetooth Low Energy - Low-power wireless communication protocol ideal for IoT, wearables, and other battery-powered applications.
- Uno Platform - Open-source .NET UI platform for building cross-platform apps.
- Google Cloud - Cloud computing services by Google.
Programming Languages
- JavaScript
- Swift - Apple's compiled programming language that is secure, modern, programmer-friendly, and fast.
- Python - General-purpose programming language designed for readability.
- Asyncio - Asynchronous I/O in Python 3.
- Scientific Audio - Scientific research in audio/music.
- CircuitPython - A version of Python for microcontrollers.
- Data Science - Data analysis and machine learning.
- Typing - Optional static typing for Python.
- MicroPython - A lean and efficient implementation of Python 3 for microcontrollers.
- Rust
- Haskell
- PureScript
- Go
- Scala
- Scala Native - Optimizing ahead-of-time compiler for Scala based on LLVM.
- Ruby
- Clojure
- ClojureScript
- Elixir
- Elm
- Erlang
- Julia - High-level dynamic programming language designed to address the needs of high-performance numerical analysis and computational science.
- Lua
- C
- C/C++ - General-purpose language with a bias toward system programming and embedded, resource-constrained software.
- R - Functional programming language and environment for statistical computing and graphics.
- D
- Common Lisp - Powerful dynamic multiparadigm language that facilitates iterative and interactive development.
- Perl
- Groovy
- Dart
- Java - Popular secure object-oriented language designed for flexibility to "write once, run anywhere".
- Kotlin
- OCaml
- ColdFusion
- Fortran
- PHP - Server-side scripting language.
- Pascal
- AutoHotkey
- AutoIt
- Crystal
- Frege - Haskell for the JVM.
- CMake - Build, test, and package software.
- ActionScript 3 - Object-oriented language targeting Adobe AIR.
- Eta - Functional programming language for the JVM.
- Idris - General purpose pure functional programming language with dependent types influenced by Haskell and ML.
- Ada/SPARK - Modern programming language designed for large, long-lived apps where reliability and efficiency are essential.
- Q# - Domain-specific programming language used for expressing quantum algorithms.
- Imba - Programming language inspired by Ruby and Python and compiles to performant JavaScript.
- Vala - Programming language designed to take full advantage of the GLib and GNOME ecosystems, while preserving the speed of C code.
- Coq - Formal language and environment for programming and specification which facilitates interactive development of machine-checked proofs.
- V - Simple, fast, safe, compiled language for developing maintainable software.
- Zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
- Move - Domain-specific programming language for writing safe smart contracts.
- Esolangs - Programming languages designed for experimentation or as jokes rather than actual use.
<img src="https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner2-direct.svg">
Front-End Development
- ES6 Tools
- Web Performance Optimization
- Web Tools
- CSS - Style sheet language that specifies how HTML elements are displayed on screen.
- React - JavaScript library for building user interfaces.
- Relay - Framework for building data-driven React apps.
- React Hooks - Lets you use state and other React features without writing a class.
- Web Components
- Polymer - JavaScript library to develop Web Components.
- Angular - App framework.
- Backbone - App framework.
- HTML5 - Markup language used for websites & web apps.
- SVG - XML-based vector image format.
- Canvas
- KnockoutJS - JavaScript library.
- Dojo Toolkit - JavaScript toolkit.
- Inspiration
- Ember - App framework.
- Android UI
- iOS UI
- Meteor
- BEM
- Flexbox
- Web Typography
- Web Accessibility
- Material Design
- D3 - Library for producing dynamic, interactive data visualizations.
- Emails
- jQuery - Easy to use JavaScript library for DOM manipulation.
- Web Audio
- Offline-First
- Static Website Services
- Cycle.js - Functional and reactive JavaScript framework.
- Text Editing
- Motion UI Design
- Vue.js - App framework.
- Marionette.js - App framework.
- Aurelia - App framework.
- Charting
- Ionic Framework
- Chrome DevTools
- PostCSS - CSS tool.
- Draft.js - Rich text editor framework for React.
- Service Workers
- Progressive Web Apps
- choo - App framework.
- Redux - State container for JavaScript apps.
- Browserify - Module bundler.
- Sass - CSS preprocessor.
- Ant Design - Enterprise-class UI design language.
- Less - CSS preprocessor.
- WebGL - JavaScript API for rendering 3D graphics.
- Preact - App framework.
- Progressive Enhancement
- Next.js - Framework for server-rendered React apps.
- lit - Library for building web components with a declarative template system.
- JAMstack - Modern web development architecture based on client-side JavaScript, reusable APIs, and prebuilt markup.
- WordPress-Gatsby - Web development technology stack with WordPress as a back end and Gatsby as a front end.
- Mobile Web Development - Creating a great mobile web experience.
- Storybook - Development environment for UI components.
- Blazor - .NET web framework using C#/Razor and HTML that runs in the browser with WebAssembly.
- PageSpeed Metrics - Metrics to help understand page speed and user experience.
- Tailwind CSS - Utility-first CSS framework for rapid UI development.
- Seed - Rust framework for creating web apps running in WebAssembly.
- Web Performance Budget - Techniques to ensure certain performance metrics for a website.
- Web Animation - Animations in the browser with JavaScript, CSS, SVG, etc.
- Yew - Rust framework inspired by Elm and React for creating multi-threaded frontend web apps with WebAssembly.
- Material-UI - Material Design React components for faster and easier web development.
- Building Blocks for Web Apps - Standalone features to be integrated into web apps.
- Svelte - App framework.
- Design systems - Collection of reusable components, guided by rules that ensure consistency and speed.
- Inertia.js - Make single-page apps without building an API.
- MDBootstrap - Templates, layouts, components, and widgets to rapidly build websites.
- Master CSS - A virtual CSS language with enhanced syntax.
- Hydrogen - Edge-first framework for building Shopify storefronts with React.
- Tiny JS - Frontend libraries that fit into 2 kB with dependencies.
- Frontend GIS - Geographic Information Systems (GIS) for web browsers.
Back-End Development
- Flask - Python framework.
- Docker
- Vagrant - Automation virtual machine environment.
- Pyramid - Python framework.
- Play1 Framework
- CakePHP - PHP framework.
- Symfony - PHP framework.
- Laravel - PHP framework.
- Education
- TALL Stack - Full-stack development solution featuring libraries built by the Laravel community.
- Rails - Web app framework for Ruby.
- Phalcon - PHP framework.
- Useful
.htaccess
Snippets
- nginx - Web server.
- Dropwizard - Java framework.
- Kubernetes - Open-source platform that automates Linux container operations.
- Lumen - PHP micro-framework.
- Serverless Framework - Serverless computing and serverless architectures.
- Apache Wicket - Java web app framework.
- Vert.x - Toolkit for building reactive apps on the JVM.
- Terraform - Tool for building, changing, and versioning infrastructure.
- Vapor - Server-side development in Swift.
- Dash - Python web app framework.
- FastAPI - Python web app framework.
- CDK - Open-source software development framework for defining cloud infrastructure in code.
- IAM - User accounts, authentication and authorization.
- Slim - PHP framework.
- Fiber - Web framework built on top of Fasthttp, the fastest HTTP engine for Go.
- Kustomize - Kubernetes native declarative configuration management tool.
- OpenTofu - Open-source infrastructure as code tool.
Computer Science
Big Data
Theory
Books
Editors
Gaming
Development Environment
Entertainment
Databases
- Database
- MySQL
- SQLAlchemy
- InfluxDB
- Neo4j
- MongoDB - NoSQL database.
- RethinkDB
- TinkerPop - Graph computing framework.
- PostgreSQL - Object-relational database.
- CouchDB - Document-oriented NoSQL database.
- HBase - Distributed, scalable, big data store.
- NoSQL Guides - Help on using non-relational, distributed, open-source, and horizontally scalable databases.
- Database Tools - Everything that makes working with databases easier.
- TypeDB - Logical database to organize large and complex networks of data as one body of knowledge.
- Cassandra - Open-source, distributed, wide column store, NoSQL database management system.
- TDengine - An open-source time-series database with high-performance, scalability, and SQL support.
- Supabase - An open-source alternative to Firebase.
- PocketBase - An open-source, Go-based backend in one file.
- Neon - An open-source alternative to AWS Aurora.
Media
Learn
Security
Content Management Systems
- Umbraco
- Refinery CMS - Ruby on Rails CMS.
- Wagtail - Django CMS focused on flexibility and user experience.
- Textpattern - Lightweight PHP-based CMS.
- Drupal - Extensible PHP-based CMS.
- Craft CMS - Content-first CMS.
- Sitecore - .NET digital marketing platform that combines CMS with tools for managing multiple websites.
- Silverstripe CMS - PHP MVC framework that serves as a classic or headless CMS.
- Directus - A real-time API and app dashboard for managing SQL database content.
- Plone - Open source Python CMS.
Hardware
Business
Work
Networking
Decentralized Systems
- Bitcoin - Bitcoin services and tools for software developers.
- Ripple - Open source distributed settlement network.
- Non-Financial Blockchain - Non-financial blockchain applications.
- Mastodon - Open source decentralized microblogging network.
- Ethereum - Distributed computing platform for smart contract development.
- Blockchain AI - Blockchain projects for artificial intelligence and machine learning.
- EOSIO - A decentralized operating system supporting industrial-scale apps.
- Corda - Open source blockchain platform designed for business.
- Waves - Open source blockchain platform and development toolset for Web 3.0 apps and decentralized solutions.
- Substrate - Framework for writing scalable, upgradeable blockchains in Rust.
- Golem - Open source peer-to-peer marketplace for computing resources.
- Stacks - A smart contract platform secured by Bitcoin.
- Algorand - An open-source, proof of stake blockchain and smart contract computing platform.
- ZeroNet - A decentralized web-like network of peer-to-peer users.
- Cosmos SDK - Modular framework for building app-specific blockchains in Go.
- Tor - A free overlay network for enabling anonymous communication.
Health and Social Science
- Biomedical Information Extraction - How to extract information from unstructured biomedical data and text.
- Computational Neuroscience - A multidisciplinary science which uses computational approaches to study the nervous system.
- Diversity - Creating a more inclusive and diverse tech community.
- Digital History - Computer-aided scientific investigation of history.
- Empathy in Engineering - Building and promoting more compassionate engineering cultures.
- Healthcare - Open source healthcare software for facilities, providers, developers, policy experts, and researchers.
- Humane Technology - Open source projects that help improve society.
- Mental Health - Mental health awareness and self-care in the software industry.
- Neuroscience - Study of the nervous system and brain.
- Digital Humanities - Software for humanities scholars using quantitative or computational methods.
- Lucid Dreams - A dream where one becomes aware they are dreaming.
Events
Testing
- Testing - Software testing.
- Visual Regression Testing - Ensures changes did not break the functionality or style.
- Selenium - Open-source browser automation framework and ecosystem.
- Appium - Test automation tool for apps.
- TAP - Test Anything Protocol.
- JMeter - Load testing and performance measurement tool.
- k6 - Open-source, developer-centric performance monitoring and load testing solution.
- Playwright - Node.js library to automate Chromium, Firefox and WebKit with a single API.
- Quality Assurance Roadmap - How to start & build a career in software testing.
- Gatling - Open-source load and performance testing framework based on Scala, Akka, and Netty.
Miscellaneous
- Scientific Writing - Distraction-free scientific writing with Markdown, reStructuredText and Jupyter notebooks.
- JSON - Text based data interchange format.
- CSV - A text file format that stores tabular data and uses a comma to separate values.
- Discounts for Student Developers
- Radio
- Awesome - Recursion illustrated.
- Analytics
- REST
- Continuous Integration and Continuous Delivery
- Services Engineering
- Free for Developers
- Answers - Stack Overflow, Quora, etc.
- Sketch - Design app for macOS.
- Boilerplate Projects
- Readme
- GitHub Wiki - Comprehensive documentation on GitHub beyond README.
- Design and Development Guides
- Software Engineering Blogs
- Self Hosted
- FOSS Production Apps
- Gulp - Task runner.
- AMA - Ask Me Anything.
- Open Source Photography
- OpenGL - Cross-platform API for rendering 2D and 3D graphics.
- GraphQL
- Urban & Regional Planning - Concerning the built environment and communities.
- Transit
- Research Tools
- Data Visualization
- Microservices
- Unicode - Unicode standards, quirks, packages and resources.
- Beginner-Friendly Projects
- Katas
- Tools for Activism
- Citizen Science - For community-based and non-institutional scientists.
- MQTT - "Internet of Things" connectivity protocol.
- For Girls
- Vorpal - Node.js CLI framework.
- Vulkan - Low-overhead, cross-platform 3D graphics and compute API.
- LaTeX - Typesetting language.
- Economics - An economist's starter kit.
- Funny Markov Chains
- Bioinformatics
- Cheminformatics - Informatics techniques applied to problems in chemistry.
- Colorful - Choose your next color scheme.
- Steam - Digital distribution platform.
- Bots - Building bots.
- Site Reliability Engineering
- DTrace - Dynamic tracing framework.
- Userscripts - Enhance your browsing experience.
- Pokémon - Pokémon and Pokémon GO.
- ChatOps - Managing technical and business operations through a chat.
- Falsehood - Falsehoods programmers believe in.
- Domain-Driven Design - Software development approach for complex needs by connecting the implementation to an evolving model.
- Quantified Self - Self-tracking through technology.
- SaltStack - Python-based config management system.
- Web Design - For digital designers.
- Creative Coding - Programming something expressive instead of something functional.
- No-Login Web Apps - Web apps that work without login.
- Free Software - Free as in freedom.
- Framer - Prototyping interactive UI designs.
- Markdown - Markup language.
- Dev Fun - Funny developer projects.
- Magento 2 - Open Source eCommerce built with PHP.
- TikZ - Graph drawing packages for TeX/LaTeX/ConTeXt.
- Ad-Free - Ad-free alternatives.
- Prometheus - Open-source monitoring system.
- Homematic - Smart home devices.
- Ledger - Double-entry accounting on the command-line.
- Web Monetization - A free open web standard service that allows you to send money directly in your browser.
- Uncopyright - Public domain works.
- Crypto Currency Tools & Algorithms - Digital currency where encryption is used to regulate the generation of units and verify transfers.
- Open Source Supporters - Companies that offer their tools and services for free to open source projects.
- Design Principles - Create better and more consistent designs and experiences.
- Theravada - Teachings from the Theravada Buddhist tradition.
- inspectIT - Open source Java app performance management tool.
- Open Source Maintainers - The experience of being an open source maintainer.
- Calculators - Calculators for every platform.
- Captcha - A type of challenge–response test used in computing to determine whether or not the user is human.
- Jupyter - Create and share documents that contain code, equations, visualizations and narrative text.
- FIRST Robotics Competition - International high school robotics championship.
- Speakers - Conference and meetup speakers in the programming and design community.
- Board Games - Table-top gaming fun for all.
- Software Patreons - Fund individual programmers or the development of open source projects.
- Parasite - Parasites and host-pathogen interactions.
- Food - Food-related projects on GitHub.
- Bitcoin Payment Processors - Start accepting Bitcoin.
- Scientific Computing - Solving complex scientific problems using computers.
- Amazon Sellers
- Agriculture - Open source technology for farming and gardening.
- Product Design - Design a product from the initial concept to production.
- Prisma - Turn your database into a GraphQL API.
- Software Architecture - The discipline of designing and building software.
- Connectivity Data and Reports - Better understand who has access to telecommunication and internet infrastructure and on what terms.
- Stacks - Tech stacks for building different apps and features.
- Cytodata - Image-based profiling of biological phenotypes for computational biologists.
- IRC - Open source messaging protocol.
- Advertising - Advertising and programmatic media for websites.
- Earth - Find ways to resolve the climate crisis.
- Naming - Naming things in computer science done right.
- Web Archiving - An effort to preserve the Web for future generations.
- WP-CLI - Command-line interface for WordPress.
- Credit Modeling - Methods for classifying credit applicants into risk classes.
- Ansible - A Python-based, open source IT configuration management and automation platform.
- Biological Visualizations - Interactive visualization of biological data on the web.
- QR Code - A type of matrix barcode that can be used to store and share a small amount of information.
- Veganism - Making the plant-based lifestyle easy and accessible.
- Translations - The transfer of the meaning of a text from one language to another.
- Scriptable - An iOS app for automations in JavaScript.
- WebXR - Enables immersive virtual reality and augmented reality content on the web.
- Computational Geometry - Computational approaches for problems in geometry.
- OpenStreetMap - An open data mapping project utilized by many apps and devices.
- Computational Biology - Computational approaches applied to problems in biology.
- Read the Docs - Example documentation projects to inspire and help bootstrap new documentation projects.
- Quarto - Scientific and technical open-source publishing system built on Pandoc.
- Biological Image Analysis - Interpreting biological phenomena using images.
- ChatGPT - Artificial intelligence chatbot developed by OpenAI.
- Whisper - Open-source AI-powered speech recognition system developed by OpenAI.
- Stock Trading - Purchase and sale of equities of publicly traded companies with the aim of generating profits.
- Steam Deck - A handheld gaming computer developed by Valve.
- Astrophotography - Photography of astronomical objects, celestial events, or areas of the night sky.
- HPC - High Performance Computing.
- Geocaching - Outdoor treasure-hunting activity that uses GPS-enabled devices.
- Regex - Specialized language for matching patterns in text.
Related