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

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • 1
    ESP32 BLE Keyboard library

    ESP32 BLE Keyboard library

    Bluetooth LE Keyboard library for the ESP32

    This library allows you to make the ESP32 act as a Bluetooth Keyboard and control what it does. Compatible with Android. Compatible with Windows. Compatible with Linux. Compatible with MacOS X (not stable, some people have issues, doesn't work with old devices). Compatible with iOS (not stable, some people have issues, doesn't work with old devices). There is also Bluetooth-specific information that you can set (optional): Instead of BleKeyboard bleKeyboard; you can do BleKeyboard bleKeyboard("Bluetooth Device Name", "Bluetooth Device Manufacturer", 100);. (Max length is 15 characters, anything beyond that will be truncated.) By default the battery level will be set to 100%, the device name will be ESP32 Bluetooth Keyboard and the manufacturer will be Espressif. This feature is meant to compensate for some applications and devices that can't handle fast input and will skip letters if too many keys are sent in a small time frame.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 2
    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: 8 This Week
    Last Update:
    See Project
  • 3
    Watchy

    Watchy

    An open source E-ink smartwatch

    Watchy, an open-source E-Ink smartwatch. Watchy is an E-Paper watch with open-source hardware and software. It has a barebones design utilizing the PCB as the watch body, allowing it to be worn as-is, or further customized with different 3D printed cases and watch straps. It is a unique timepiece that is also a wearable development platform, allowing users to create their own experience. Ultra-low-power e-paper 1.54″ display with 200 x 200 resolution and wide viewing angle. Wi-Fi & Bluetooth LE connectivity. 3-axis accelerometer with gesture detection. Real-time clock for accurate timekeeping with calendar and alarm functions. Built-in USB-to-serial adapter for programming on the go. Watchy comes with comprehensive documentation and Arduino code examples that demonstrate every hardware feature. New watch faces and examples are regularly added.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 4
    Arduino libraries

    Arduino libraries

    Arduino libraries and code

    This repository contains several Arduino libraries I have written to be used in applications. Most of them include example code on how the libraries can be used. Furthermore, this repository contains a few stand-alone applications. For bugs in the libraries, please fill in an issue in Github as that makes it far easier to track them. If possible provide a minimal code snippet that exposes the bug. Add information about the platform used and version etc. Also, proposals for solutions are welcome. For improvements and changes, please provide a pull request. I will try to follow up on them asap but it can take quite some time. Please try to be generic in your improvements and try to see "over the needs of your own application".
    Downloads: 7 This Week
    Last Update:
    See Project
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 5
    TinyGSM

    TinyGSM

    A small Arduino library for GSM modules, that just works

    A small Arduino library for GSM modules that just works. This library is easy to integrate with lots of sketches that use Ethernet or WiFi. PubSubClient (MQTT), Blynk, HTTP Client, and File Download examples are provided. Arduino GSM library uses 15868 bytes (49%) of Flash and 1113 bytes (54%) of RAM in a similar scenario. TinyGSM also pulls data gently from the modem (whenever possible), so it can operate on very little RAM. Now, you have more space for your experiments. TCP (HTTP, MQTT, Blynk, ...) All modules support TCP connections. Most modules support multiple simultaneous connections. TCP and SSL connections can usually be mixed up to the total number of possible connections. Many GSM modems, WiFi, and radio modules can be controlled by sending AT commands over Serial. TinyGSM knows which commands to send, and how to handle AT responses, and wraps that into the standard Arduino Client interface.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 6
    ESP8266Audio

    ESP8266Audio

    Arduino library to play MOD, WAV, FLAC, MIDI, RTTTL, MP3

    Arduino library for parsing and decoding MOD, WAV, MP3, FLAC, MIDI, AAC, and RTTL files and playing them on an I2S DAC or even using a software-simulated delta-sigma DAC with dynamic 32x-128x oversampling. ESP8266 is fully supported and most mature, but ESP32 is also mostly there with built-in DAC as well as external ones. For real-time, autonomous speech synthesis, check out ESP8266SAM, a library that uses this one and a port of an ancient format-based synthesis program to allow your ESP8266 to talk with low memory and no network required. All this code is released under the GPL, and all of it is to be used at your own risk. If you find any bugs, please let me know via the GitHub issue tracker or drop me an email. The MOD and MP3 routines were taken from StellaPlayer and libMAD respectively. The software I2S delta-sigma 32x oversampling DAC was my own creation and sounds quite good if I do say so myself.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 7
    WebbotLib
    C library for robot creators using certain AVR microcontrollers with support for 3rd party hardware boards for various sensors and motor controllers. Comprehensive PDF manual included in the download. Version 2 code stream - requires that projects are created using Project Designer from my web site. If your board isn't listed in Project Designer then look at Board Designer on my web-site to create your own custom board - or if its a commercial board then let me know and, with permission, I will add your design to the release. Version 1 code stream - requires you to do everything by hand and will be discontinued in the near future.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    Arduino DRV8833 Motor Controller Library

    Arduino DRV8833 Motor Controller Library

    A library for the control of motors using the TI DRV8833 IC

    Downloads: 3 This Week
    Last Update:
    See Project
  • 9
    Attitude Estimator

    Attitude Estimator

    A C++ implementation of a nonlinear 3D IMU fusion algorithm.

    Attitude Estimator is a generic platform-independent C++ library that implements an IMU sensor fusion algorithm. Up to 3-axis gyroscope, accelerometer and magnetometer data can be processed into a full 3D quaternion orientation estimate, with the use of a nonlinear Passive Complementary Filter. The library is targeted at robotic applications, but is by no means limited to this. Features of the estimator include gyro bias estimation, transient quick learning, multiple estimation algorithms, tuneable estimator parameters, and near-global stability backed by theoretical analysis. Great emphasis has been placed on having a very efficient, yet totally numerically and algorithmically robust implementation of the filter. The code size has also been kept to a minimum, and has been extremely well-commented. The programmatic interface has also been made as easy as possible. Please refer to the extensive documentation of the library for more information on its capabilities and usage caveats.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Build Securely on Azure with Proven Frameworks Icon
    Build Securely on Azure with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 10
    Matlab/Octave Rotations Library

    Matlab/Octave Rotations Library

    Library for working with 3D rotations in Matlab/Octave

    The Matlab/Octave rotations library is a collection of functions, bundled as m-scripts, that address computations and numerical handling of rotations in 3D Euclidean space. The rotation representations that are supported are rotation matrices (Rotmat), Quaternions (Quat), intrinsic ZYX Euler angles (Euler), fused angles (Fused) and tilt angles (Tilt). Operations such as composition, inversion, ZYX yaw extraction, fused yaw extraction, random generation, equality detection, vector rotation and much more have been implemented for each rotation representation. Tilt vector addition and the relative and absolute tilt phase spaces are also supported. Unit tests for each function are provided to ensure that the library is performant.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    Arduino MIDI Library

    Arduino MIDI Library

    MIDI for Arduino

    This library adds MIDI I/O communications to an Arduino board. MIDI over USB, Bluetooth, IP & AppleMIDI (see Transports). Active Sensing support. Compatible with all Arduino boards (and clones with an AVR processor). Simple and fast way to send and receive every kind of MIDI message (including all System messages, SysEx, Clock, etc..). OMNI input reading (read all channels). Software Thru, with message filtering. Callbacks to handle input messages more easily. Last received message is saved until a new one arrives. Overridable template-based settings. Create more than one MIDI interface for mergers/splitters applications. Use any serial port, hardware or software. All USB-related code has been moved into a separate repository Arduino-USB-MIDI, USB MIDI Device support with MIDI USB, still using this library to do all the MIDI heavy-lifting.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 12
    Behaviour Control Framework

    Behaviour Control Framework

    A C++ framework that uses inhibition trees for behaviour control.

    The Behaviour Control Framework is a generic platform-independent C++ framework that implements a control architecture consisting of a hierarchical network of behaviour layers. These layers each contain behaviours that can inhibit one another and interact to achieve control. A full discussion of the structure and ideas behind this framework can be found in the Doxygen documentation that comes with the release. This documentation is well worth a read before you decide if the library is for you! The structure and implementation of this library focuses on the application of the inhibition-based behaviour control architecture to real-time control loops, but can reasonably be adapted for a wide variety of other artificial intelligence applications. Emphasis has been placed on having very low overhead so as not to hurt overall system performance, while still maintaining ease of use. I welcome all feedback, suggestions and bug reports! Email: pallgeuer[at]ais.uni-bonn.de
    Downloads: 0 This Week
    Last Update:
    See Project
  • 13
    The BioloidNativeInterface is a C++ library to control bioloid/dynamixel modules including AX12, AXS1. It provides a parser for the bioloid protocoll and methods to read/write packets.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 14
    It's an object-oriented library written in C++ for creating arbitrary kind of neural networks. The user can use the classes provided to create neural network with arbitrary topology and mixed type of neurons. It's very easy add custom neurons.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 15
    RESHL

    RESHL

    ROS-Enhanced Scalable Haptic Library - discontinued

    PROJECT DISCONTINUED ---------------------------------------- RESHL is a collection of Linux software used to interact with pen-master based haptic devices. Its name, ROS-Enhanced Scalable Haptic Library, describes all its main features: - ROS-Enhanced: the library can be used as a library in the ROS framework (Robot Operating System - http://www.ros.org/) and provides out-of-the-box support for master-slave solutions - Scalable: the library consists in different sub-libraries with different software dependencies. This way you don't have to install software for devices or functionality you're not going to use. Refer to Structure section for details on the single sub-libraries. - Haptic: the end-application is using pen-master devices to simulate the sense of touch in a haptic virtual environment. - Library: the software is distributed in c++ libraries with an easy interface. A graphic environment based on OpenGL is generated to improve the user's experience.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16

    ROS4iOS

    How to build ROS (Robot Operating System) for the iOS platform.

    Instructions and source code to build a native ROS port for the iOS platform. The project also includes a sample application for testing.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    Rhyduino - Arduino via Managed Code
    Project has moved. http://rhyduino.codeplex.com
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    Robotics Library

    Robotics Library

    C++ framework for robot kinematics, dynamics, motion planning, control

    The Robotics Library (RL) is a self-contained C++ library for rigid body kinematics and dynamics, motion planning, and control. It covers spatial vector algebra, multibody systems, hardware abstraction, path planning, collision detection, and visualization.
    Leader badge
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Rotations Conversion Library

    Rotations Conversion Library

    Library for working with 3D rotations in C++

    The Rotations Conversion Library (RCL) is a collection of C++ functions that address common computations and numerical handling of rotations in 3D Euclidean space, including support for rotation matrices (`Rotmat`), Quaternions (`Quat`), intrinsic ZYX Euler angles (`Euler`), fused angles (`Fused`) and tilt angles (`Tilt`). In addition to the core competency of being able to convert between each of the representations, operations such as inversion, ZYX yaw extraction, fused yaw extraction, renormalisation, equality detection, vector rotation and much more have been implemented. Unit tests for each function are provided to ensure that the library performs exactly as it should. The implementation of the Rotations Conversion Library is based on the very related Matlab/Octave Rotations Library (MORL), which is a highly tested reference implementation for the required algorithms (see https://sourceforge.net/projects/rotationslib/).
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    State Controller Library

    State Controller Library

    A C++ framework that implements generalised finite state machines.

    The State Controller Library is a generic platform-independent C++ framework that allows finite state machines and multi-action planning generalisations thereof to be realised. The structure and implementation of this library focuses on the application of finite state machines to real-time control loops, but can be reasonably adapted for virtually any other application, even completely unrelated to control systems. An emphasis has been placed on having very low overhead so as not to hurt overall system performance no matter where this library is used, while still maintaining ease of use. Code size has also been kept to a minimum. Aside from implementing standard finite state machines and multi-action planning state machines, this library can also be used to implement hierarchical state controllers, or any hybrid of the three. Please refer to the extensive documentation for more information. I welcome all feedback, suggestions and bug reports! Email: pallgeuer[at]ais.uni-bonn.de
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    A wrapper around the leJOS NXJ (http://lejos.sourceforge.net/) API that allows easy test-driven development (TDD) of robot code in Java with JUnit.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    A small and optimized C library for the ASURO platform. A small ASURO-compatible bootloader is also included. ##### Eine optimierte kleine C-Bibliothek für die ASURO-Plattform. Zum Umfang gehört außerdem ein ASURO-kompatibler Bootloader.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    WS2812FX

    WS2812FX

    WS2812 FX library for Arduino and ESP8266

    This library features a variety of blinken effects for the WS2811/WS2812/NeoPixel LEDs. It is meant to be a drop-in replacement for the Adafruit NeoPixel library with additional features. You can search for WS2812FX in the Arduino IDE Library Manager or install the latest (or development) version manually. More complex effects can be created by dividing your string of LEDs into segments (up to ten) and programming each segment independently. Use the segment() function to program each segment's mode, color, speed, and direction (normal or reverse). Note, some effects make use of more than one color (up to three) and are programmed by specifying an array of colors. Random color introduced alternating from start and end of strip. Alternating white/red/black pixels running. Strobe effect with different strobe count and pause, controlled by speed setting. Classic Strobe effect. Cycling through the rainbow.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    go1pylib

    go1pylib

    go1pylib is a Python library designed to control the Go1 robot

    go1pylib is a Python library designed to control the Go1 robot by Unitree Robotics. It provides an easy-to-use interface for robot movement, state management, collision avoidance, battery monitoring, and MQTT communication. Ideal for research and robotics development.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    grummel
    This C++ and Qt based project provides an easy way to control the step motor boards PAO-3M and SMK-4M-4A from Grummes Elektronik GmbH from within your own application. Interfacing is done using the LPT parallel port.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next