Browse free open source Libraries and projects for Linux below. Use the toggles on the left to filter open source Libraries by OS, license, language, programming language, and project status.

  • Cut Cloud Costs with Google Compute Engine Icon
    Cut Cloud Costs with Google Compute Engine

    Save up to 91% with Spot VMs and get automatic sustained-use discounts. One free VM per month, plus $300 in credits.

    Save on compute costs with Compute Engine. Reduce your batch jobs and workload bill 60-91% with Spot VMs. Compute Engine's committed use offers customers up to 70% savings through sustained use discounts. Plus, you get one free e2-micro VM monthly and $300 credit to start.
    Try Compute Engine
  • Build AI Apps with Gemini 3 on Vertex AI Icon
    Build AI Apps with Gemini 3 on Vertex AI

    Access Google’s most capable multimodal models. Train, test, and deploy AI with 200+ foundation models on one platform.

    Vertex AI gives developers access to Gemini 3—Google’s most advanced reasoning and coding model—plus 200+ foundation models including Claude, Llama, and Gemma. Build generative AI apps with Vertex AI Studio, customize with fine-tuning, and deploy to production with enterprise-grade MLOps. New customers get $300 in free credits.
    Try Vertex AI Free
  • 1
    libusb

    libusb

    A cross-platform library that gives apps easy access to USB devices

    Library to enable user space application programs to communicate with USB devices
    Leader badge
    Downloads: 3,678 This Week
    Last Update:
    See Project
  • 2
    *NOTE* Migrated to http://github.com/cracklib/cracklib Next generation version of libCrack password checking library. As of Oct 2008 (reflected in 2.8.15 code release), licensed under LGPL.
    Leader badge
    Downloads: 1,941 This Week
    Last Update:
    See Project
  • 3
    PHPMailer

    PHPMailer

    The classic email sending library for PHP

    PHPMailer – A full-featured email creation and transfer class for PHP. Support for UTF-8 content and 8bit, base64, binary, and quoted-printable encodings. SMTP authentication with LOGIN, PLAIN, CRAM-MD5, and XOAUTH2 mechanisms over SMTPS and SMTP+STARTTLS transports. Validates email addresses automatically. Many PHP developers need to send email from their code. The only PHP function that supports this directly is mail(). However, it does not provide any assistance for making use of popular features such as encryption, authentication, HTML messages, and attachments. Formatting email correctly is surprisingly difficult. There are myriad overlapping (and conflicting) standards, requiring tight adherence to horribly complicated formatting and encoding rules – the vast majority of code that you'll find online that uses the mail() function directly is just plain wrong, if not unsafe!
    Downloads: 166 This Week
    Last Update:
    See Project
  • 4
    Rekado

    Rekado

    Payload launcher and serial number checker for Nintendo Switch

    Payload launcher is written in Kotlin for Nintendo Switch. The application doesn't require Root on your device.
    Downloads: 79 This Week
    Last Update:
    See Project
  • AI-powered service management for IT and enterprise teams Icon
    AI-powered service management for IT and enterprise teams

    Enterprise-grade ITSM, for every business

    Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity. Maximize operational efficiency with refreshingly simple, AI-powered Freshservice.
    Try it Free
  • 5

    ESP8266 Arduino Core

    ESP8266 core for Arduino

    ESP8266 Arduino Core is the Arduino core for the ESP8266 WiFi chip. It brings support for the ESP8266 chip to the Arduino environment, allowing you to write sketches, use familiar Arduino functions and libraries, and run these directly on ESP8266 without the need for an external microcontroller. ESP8266 Arduino core comes with libraries that enable it to perform a number of things. It can communicate over WiFi through the use of TCP and UDP; it can set up HTTP, mDNS, SSDP, and DNS servers; and it can perform OTA updates. ESP8266 Arduino core works with SD cards, servos, SPI and I2C peripherals.
    Downloads: 54 This Week
    Last Update:
    See Project
  • 6
    libusb

    libusb

    A cross-platform library to access USB devices

    libusb is a library for USB device access from Linux, macOS, Windows, OpenBSD/NetBSD, Haiku and Solaris userspace. It is written in C (Haiku backend in C++) and licensed under the GNU Lesser General Public License version 2.1 or, at your option, any later version. libusb is a C library that provides generic access to USB devices. It is intended to be used by developers to facilitate the production of applications that communicate with USB hardware. Using a single cross-platform API, it provides access to USB devices on Linux, macOS, Windows, etc. No special privilege or elevation is required for the application to communicate with a device. All versions of the USB protocol, from 1.0 to 3.1 (latest), are supported. libusb is abstracted internally in such a way that it can hopefully be ported to other operating systems.
    Downloads: 41 This Week
    Last Update:
    See Project
  • 7
    DMX Library for Arduino

    DMX Library for Arduino

    DMX Library and usage examples for Arduino

    This Library includes a DMX Master, DMX Slave and various examples on how to use its implementation. This projects has been started to support the use of our Shielded DMX / RDM Shield for Arduino. The library is made available under the GNU Lesser General Public License If you would like to make contributions to the source code feel free to contact the project admin
    Leader badge
    Downloads: 53 This Week
    Last Update:
    See Project
  • 8
    TFT_eSPI

    TFT_eSPI

    Arduino and PlatformIO IDE compatible TFT library

    An Arduino IDE compatible graphics and fonts library for 32-bit processors. The library is targeted at 32-bit processors, it has been performance-optimized for STM32, ESP8266 and ESP32 types. The library can be loaded using the Arduino IDE's Library Manager. Direct Memory Access (DMA) can be used with the ESP32, RP2040, and STM32 processors to improve rendering performance. "Four wire" SPI and 8 bit parallel interfaces are supported. Due to the lack of GPIO pins, the 8-bit parallel interface is NOT supported on the ESP8266. 8 bit parallel interface TFTs (e.g. UNO format mcufriend shields) can use with the STM32 Nucleo 64/144 range or the UNO format ESP32. ILI9341 and ST7796 SPI-based displays are recommended as starting points for experimenting with this library. The library supports some TFT displays designed for the Raspberry Pi (RPi) that are based on a ILI9486 or ST7796 driver chip with a 480 x 320-pixel screen.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 9

    Face Recognition

    World's simplest facial recognition api for Python & the command line

    Face Recognition is the world's simplest face recognition library. It allows you to recognize and manipulate faces from Python or from the command line using dlib's (a C++ toolkit containing machine learning algorithms and tools) state-of-the-art face recognition built with deep learning. Face Recognition is highly accurate and is able to do a number of things. It can find faces in pictures, manipulate facial features in pictures, identify faces in pictures, and do face recognition on a folder of images from the command line. It could even do real-time face recognition and blur faces on videos when used with other Python libraries.
    Downloads: 7 This Week
    Last Update:
    See Project
  • Easily Host LLMs and Web Apps on Cloud Run Icon
    Easily Host LLMs and Web Apps on Cloud Run

    Run everything from popular models with on-demand NVIDIA L4 GPUs to web apps without infrastructure management.

    Run frontend and backend services, batch jobs, host LLMs, and queue processing workloads without the need to manage infrastructure. Cloud Run gives you on-demand GPU access for hosting LLMs and running real-time AI—with 5-second cold starts and automatic scale-to-zero so you only pay for actual usage. New customers get $300 in free credit to start.
    Try Cloud Run Free
  • 10
    MQTTnet

    MQTTnet

    High performance .NET library for MQTT based communication

    MQTTnet is a high-performance .NET library for MQTT-based communication. It provides an MQTT client and an MQTT server (broker) and supports the MQTT protocol up to version 5. TLS support for client and server (but not UWP servers). Extensible communication channels (e.g. In-Memory, TCP, TCP+TLS, WS). Lightweight (only the low-level implementation of MQTT, no overhead). Performance optimized (processing ~150.000 messages/second). Uniform API across all supported versions of the MQTT protocol. Tested on the local machine (Intel i7 8700K) with MQTTnet client and server running in the same process using the TCP channel. The app for verification is part of this repository and stored in /Tests/MQTTnet.TestApp.NetCore. List of connected clients available. Supports connected clients with different protocol versions at the same time. Able to publish its own messages (no loopback client required). Able to receive every message (no loopback client required).
    Downloads: 7 This Week
    Last Update:
    See Project
  • 11
    spdlog

    spdlog

    Fast C++ logging library

    spdlog is a header only library. Just copy the files under include to your build tree and use a C++11 compiler. It provides a python like formatting API using the bundled fmt lib. spdlog takes the "include what you need" approach, your code should include the features that actually needed. For example, if you only need rotating logger, you need to include "spdlog/sinks/rotating_file_sink.h". spdlog provides various log targets, which are, rotating log files, daily log files, console logging (colors supported), syslog, Windows event log, and Windows debugger (OutputDebugString(..)). Easily extendable with custom log targets. Log filtering, log levels can be modified in runtime as well as in compile time. Support for loading log levels from argv or from environment var. Backtrace support, store debug messages in a ring buffer and display later on demand.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 12
    ToaruOS

    ToaruOS

    Hobby operating system, bootloader, kernel, drivers, C library

    ToaruOS is a "complete" operating system for x86-64 PCs and experimental support for ARMv8. While many independent, hobby, and research OSes aim to experiment with new designs, ToaruOS is intended as an educational resource, providing a representative microcosm of functionality found in major desktop operating systems. The OS includes a kernel, bootloader, dynamic shared object linker, C standard library, its own composited windowing system, a dynamic bytecode-compiled programming language, advanced code editor, and dozens of other utilities and example applications. There are no external runtime dependencies and all required source code, totaling roughly 100k lines of (primarily) C, is included in this repository, save for Kuroko, which lives separately. Through out the project, ToaruOS has also attracted quite a few beginner OS developers who have tried to use it as a reference.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 13
    ArrayFire

    ArrayFire

    ArrayFire, a general purpose GPU library

    ArrayFire is a general-purpose tensor library that simplifies the process of software development for the parallel architectures found in CPUs, GPUs, and other hardware acceleration devices. The library serves users in every technical computing market. Data structures in ArrayFire are smartly managed to avoid costly memory transfers and to take advantage of each performance feature provided by the underlying hardware. The community of ArrayFire developers invites you to build with us if you're interested and able to write top performing tensor functions. Together we can fulfill The ArrayFire Mission under an excellent Code of Conduct that promotes a respectful and friendly building experience. Rigorous benchmarks and tests ensuring top performance and numerical accuracy. Cross-platform compatibility with support for CUDA, OpenCL, and native CPU on Windows, Mac, and Linux. Built-in visualization functions through Forge.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 14
    Blynk C++ Library

    Blynk C++ Library

    Blynk library for embedded hardware

    Blynk is the most popular Internet of Things platform for connecting any hardware to the cloud, designing apps to control them, and managing your deployed products at scale. With Blynk Library you can connect over 400 hardware models (including ESP8266, ESP32, NodeMCU, all Arduinos, Raspberry Pi, Particle, Texas Instruments, etc.)to the Blynk Cloud. With Blynk apps for iOS and Android apps you can easily drag-n-drop graphic interfaces for any DIY or commercial project. It's a pure WYSIWG experience, no coding on iOS or Android required. Hardware can connect to Blynk Cloud (open-source server) over the Internet using hardware connectivity available on your board (like ESP32), or with the use of various shields (Ethernet, WiFi, GSM, LTE, etc). Blynk Cloud is available for every user of Blynk for free. Direct connection over Bluetooth is also possible. Check the included examples on how to use different types of connections (transports) and explore Blynk features.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 15
    Imagen - Pytorch

    Imagen - Pytorch

    Implementation of Imagen, Google's Text-to-Image Neural Network

    Implementation of Imagen, Google's Text-to-Image Neural Network that beats DALL-E2, in Pytorch. It is the new SOTA for text-to-image synthesis. Architecturally, it is actually much simpler than DALL-E2. It consists of a cascading DDPM conditioned on text embeddings from a large pre-trained T5 model (attention network). It also contains dynamic clipping for improved classifier-free guidance, noise level conditioning, and a memory-efficient unit design. It appears neither CLIP nor prior network is needed after all. And so research continues. For simpler training, you can directly supply text strings instead of precomputing text encodings. (Although for scaling purposes, you will definitely want to precompute the textual embeddings + mask)
    Downloads: 3 This Week
    Last Update:
    See Project
  • 16
    This project consists of a linux kernel driver and some user-mode libraries. They allow a process to create a virtual usb host controller. Real or virtual usb devices can be "plugged" into this controller.
    Leader badge
    Downloads: 80 This Week
    Last Update:
    See Project
  • 17

    raspicam

    C++ library for controlling Raspberry Pi Camera (with/without OpenCV)

    This library allows to use the Raspberry Pi Camera. Main features: - Provides class RaspiCam for easy and full control of the camera - Provides class RaspiCam_Cv for easy control of the camera with OpenCV. - Easy compilation/installation using cmake. - No need to install development file of userland. Implementation is hidden. - Many examples
    Downloads: 18 This Week
    Last Update:
    See Project
  • 18
    Udis86 is an easy-to-use minimalistic disassembler library for the x86 and x86-64 instruction set architectures. The primary intent of the design and development of udis86 is to aid software development projects that entail binary code analysis.
    Leader badge
    Downloads: 30 This Week
    Last Update:
    See Project
  • 19
    7-Zip-JBinding

    7-Zip-JBinding

    Java wrapper for 7z archiver engine

    Native (JNI) cross-platform library to extract (password protected, multi-part) 7z Zip Rar Tar Split Lzma Iso HFS GZip Cpio BZip2 Z Arj Chm Lhz Cab Nsis Deb Rpm Wim Udf archives and create 7z, Zip, Tar, GZip & BZip2 from Java.
    Leader badge
    Downloads: 19 This Week
    Last Update:
    See Project
  • 20

    libgaminggear

    Provides functionality for gaming input devices

    Leader badge
    Downloads: 57 This Week
    Last Update:
    See Project
  • 21
    Better Auth

    Better Auth

    The most comprehensive authentication library for TypeScript

    Better Auth is framework-agnostic authentication (and authorization) library for TypeScript. It provides a comprehensive set of features out of the box and includes a plugin ecosystem that simplifies adding advanced functionalities with minimal code in a short amount of time. Whether you need 2FA, multi-tenant support, or other complex features. It lets you focus on building your actual application instead of reinventing the wheel.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    Elasticsearch Node.js client

    Elasticsearch Node.js client

    Elasticsearch client library for Node.js

    Node.js client for Elasticsearch. The client versioning follows the Elastic Stack versioning, this means that major, minor, and patch releases are done following a precise schedule that often does not coincide with the Node.js release times. Language clients are forward compatible; meaning that clients support communicating with greater or equal minor versions of Elasticsearch. Elasticsearch language clients are only backwards compatible with default distributions and without guarantees made. If you are using multiple versions of Elasticsearch, you need to use multiple versions of the client. In the past, install multiple versions of the same package was not possible, but with npm v6.9, you can do that via aliasing. You will require the packages from your code by using the alias you have defined.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 23
    Go gRPC Middleware

    Go gRPC Middleware

    Golang gRPC Middlewares: interceptor chaining, auth, logging, retries

    gRPC Go has support for "interceptors", i.e. middleware that is executed either on the gRPC Server before the request is passed onto the user's application logic, or on the gRPC client either around the user call. It is a perfect way to implement common patterns: auth, logging, tracing, metrics, validation, retries, rate limiting, and more, which can be great generic building blocks that make it easy to build multiple microservices. Especially for observability signals (logging, tracing, metrics) interceptors offer semi-auto-instrumentation that improves the consistency of your observability and allows great correlation techniques (e.g. exemplars and trace ID in logs). Demo-ed in examples. This repository offers ready-to-use middleware that implements gRPC interceptors with examples. In some cases, dedicated projects offer great interceptors, so this repository skips those, and we link them in the interceptors list.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 24
    IRremoteESP8266

    IRremoteESP8266

    Infrared remote library for ESP8266/ESP32

    Infrared remote library for ESP8266/ESP32. Send and receive infrared signals with multiple protocols. This library enables you to send and receive infra-red signals on an ESP8266 or an ESP32 using the Arduino framework using common 940nm IR LEDs and common IR receiver modules. e.g. TSOP{17,22,24,36,38,44,48} demodulators etc. Usage of the library has been slightly changed in v2.0. You will need to change your usage to work with v2.0 and beyond. You can read more about the changes required on our Upgrade to v2.0 page. The library has changed from using constants declared as #define to const with the appropriate naming per the C++ style guide. This may potentially cause old programs to not compile. The most likely externally used #defines have been aliased for limited backward compatibility for projects using the old style. Going forward, only the new constant name style will be supported for new protocol additions.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 25
    Photobooth

    Photobooth

    A photobooth Web-Application for raspberry pi with gphoto2

    A Photobooth web interface for Raspberry Pi and Windows. Event-specific (e.g. wedding, birthday) config to show a symbol (e.g. heart) between some text on the start page. Green screen keying (chroma keying). Photo collage function: take 4 pictures in a row with or without interruption and let it generate a collage out of it. Save pictures with a Polaroid effect. Adjust take picture and print commands. And many more options to adjust and style the Photobooth for your personal needs.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next
MongoDB Logo MongoDB