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

  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS 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
  • Go From AI Idea to AI App Fast Icon
    Go From AI Idea to AI App Fast

    One platform to build, fine-tune, and deploy ML models. No MLOps team required.

    Access Gemini 3 and 200+ models. Build chatbots, agents, or custom models with built-in monitoring and scaling.
    Try Free
  • 1
    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: 30 This Week
    Last Update:
    See Project
  • 2
    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: 29 This Week
    Last Update:
    See Project
  • 3
    Darknet

    Darknet

    Convolutional Neural Networks

    Darknet is an open source neural network framework written in C and CUDA, developed by Joseph Redmon. It is best known as the original implementation of the YOLO (You Only Look Once) real-time object detection system. Darknet is lightweight, fast, and easy to compile, making it suitable for research and production use. The repository provides pre-trained models, configuration files, and tools for training custom object detection models. With GPU acceleration via CUDA and OpenCV integration, it achieves high performance in image recognition tasks. Its simplicity, combined with powerful capabilities, has made Darknet one of the most influential projects in the computer vision community.
    Downloads: 28 This Week
    Last Update:
    See Project
  • 4
    Open source DKIM library, MTA filter implementation and associated tools.
    Leader badge
    Downloads: 144 This Week
    Last Update:
    See Project
  • AI-generated apps that pass security review Icon
    AI-generated apps that pass security review

    Stop waiting on engineering. Build production-ready internal tools with AI—on your company data, in your cloud.

    Retool lets you generate dashboards, admin panels, and workflows directly on your data. Type something like “Build me a revenue dashboard on my Stripe data” and get a working app with security, permissions, and compliance built in from day one. Whether on our cloud or self-hosted, create the internal software your team needs without compromising enterprise standards or control.
    Try Retool free
  • 5
    WebP Codec

    WebP Codec

    Library to encode and decode images in WebP format

    libwebp is the reference codec library for Google’s WebP image format, providing both encoding and decoding along with command-line tools. It supplies cwebp to compress images into WebP and dwebp to decompress them back, making it easy to test quality/size trade-offs across presets and tuning parameters. The GitHub repository is a mirror; the canonical source of truth lives on Chromium’s git, and developer docs are hosted on WebP’s portal. The project underpins WebP support across browsers, imaging libraries, and many native apps thanks to its stable C API. Additional companion repos host test data and demos, including JavaScript builds and timing tests for various platforms. As a widely deployed codec, libwebp balances compression efficiency, speed, and integration simplicity across platforms.
    Downloads: 26 This Week
    Last Update:
    See Project
  • 6
    stb

    stb

    stb single-file public domain libraries for C/C++

    stb is an open source collection of single-file C libraries created by Sean Barrett (nothings) for graphics, image loading, and utility functions. The repository provides lightweight, public domain libraries that can be easily integrated into projects without external dependencies or complex build processes. Popular components include stb_image.h for image loading, stb_image_write.h for writing images, and stb_truetype.h for font rendering. These libraries are widely used in game development, graphics engines, and multimedia applications due to their simplicity and portability. The project emphasizes ease of use, minimalism, and performance while avoiding bloated frameworks. Maintained and supported by the open source community, stb has become a standard toolkit for C and C++ developers working with images and graphics.
    Downloads: 25 This Week
    Last Update:
    See Project
  • 7
    [OFFICIAL] tinyfiledialogs C C++ v3.21.3

    [OFFICIAL] tinyfiledialogs C C++ v3.21.3

    inputbox password WIN OSX GTK QT Console VCPKG C# Lua R Fortran Pascal

    one C/C++ file & header ==> 8 functions: - beep - tray notify popup - message & question - input & password - save file - open file(s) - select folder - color picker complements OpenGL Vulkan GLFW GLUT GLUI VTK SFML TGUI SDL Ogre Unity3d ION OpenCV CeGui MathGL GLM CPW GLOW Open3D ImGui MyGui GLT NGL STB Nuklear Fenster MicroUi & head-less programs NO INIT NO MAIN LOOP NO LINKING NO INCLUDE win (XP to 11) ASCII MBCS UTF-8 UTF-16 (wchar_t) - native dialogs osx/unix ASCII UTF-8 - applescript kdialog zenity shanty … ° SSH console / X forwarding / waypipe Wayland ° the dialogs can be forced into console mode ° curses dialogs via Dialog.exe/Dialog (disabled by default) C89/C23 & C++98/C++23 compliant VisualStudio MinGW GCC Clang TinyCC IntelCC OWCC BCC SunCC on Windows Mac Linux Bsd Solaris Minix Raspbian Flatpak Haiku bindings: VCPKG C# R Lua Rust Haskell Java AllegroBasic Fortran Pascal D JavaScript Kotlin click tab 'Files' for prototypes
    Leader badge
    Downloads: 116 This Week
    Last Update:
    See Project
  • 8
    ffmpeg.wasm

    ffmpeg.wasm

    FFmpeg for browser, powered by WebAssembly

    ffmpeg.wasm is a pure WebAssembly (and JavaScript/TypeScript) port of FFmpeg that enables in-browser media recording, conversion, and streaming—letting developers perform video/audio processing entirely client-side without server uploads. Transpiled via Emscripten from FFmpeg and its codecs into WebAssembly. Supports both single-threaded and multi-threaded cores using web workers. Written in TypeScript for improved developer experience.
    Downloads: 22 This Week
    Last Update:
    See Project
  • 9
    Lightweight ring buffer manager

    Lightweight ring buffer manager

    Lightweight generic ring buffer manager library

    The library provides generic FIFO ring buffer implementation.
    Downloads: 21 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
  • 10
    libwdi

    libwdi

    Windows Driver Installer library for USB devices

    libwdi is a cross-platform open-source C library focused on simplifying the installation of device drivers for USB hardware that otherwise does not have automatic driver support, making it especially useful for developers building installers or system management tools. The library abstracts away many of the complexities of USB device enumeration and driver deployment on Windows systems, such as creating a list of devices, preparing appropriate driver files, and invoking the operating system’s driver installation mechanics, so your software doesn’t have to re-implement these low-level tasks. It provides a clean API that includes functions to detect driverless USB devices, prepare driver packages, install drivers programmatically, and handle logging and error codes reliably. Projects integrate this library into custom installers, automated provisioning scripts, or hardware management solutions where users need seamless driver setup without manual steps.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 11
    GLEW

    GLEW

    The OpenGL Extension Wrangler Library

    GLEW is a cross-platform open-source C/C++ extension loading library that simplifies the process of using OpenGL extensions. It provides efficient run-time mechanisms to determine the availability of OpenGL extensions on the target platform, exposing core and extension functionality in a single header file. GLEW supports multiple operating systems, including Windows, Linux, macOS, FreeBSD, Irix, and Solaris, making it a versatile tool for graphics developers.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 12
    HIDAPI library

    HIDAPI library

    A Simple cross-platform library for communicating with HID devices

    HIDAPI is a multi-platform library that allows an application to interface with USB and Bluetooth HID-Class devices on Windows, Linux, FreeBSD, and macOS. HIDAPI can be either built as a shared library (.so, .dll or .dylib) or can be embedded directly into a target application by adding a single source file (per platform) and a single header.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 13
    LVGL

    LVGL

    Powerful and easy-to-use embedded GUI library with many widgets

    Powerful and easy-to-use embedded GUI library with many widgets, advanced visual effects (opacity, antialiasing, animations), and low memory requirements (16K RAM, 64K Flash). LVGL provides everything you need to create an embedded GUI with easy-to-use graphical elements, beautiful visual effects, and a low memory footprint. LVGL is an open-source graphics library providing everything you need to create an embedded GUI with easy-to-use graphical elements, beautiful visual effects, and a low memory footprint. Create stunning user interfaces with LVGL! Take advantage of its platform-independent nature and use one library with small microcontrollers or high-end processors. The LVGL is a lightweight embedded library for displays and touchscreens providing everything required to build fully featured-embedded GUIs. Do you like Python? Create your UI in MicroPython with LVGL.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 14
    FluidSynth

    FluidSynth

    A real-time SoundFont software synthesizer

    A real-time software synthesizer based on the SoundFont 2 specifications. It can be used for live audio synthesis of MIDI events or for rendering MIDI files to disk, using SoundFont instruments. It can also be embedded in other applications. This is not a application with a graphical user interface, however there are several GUI applications which utilize FluidSynth.
    Leader badge
    Downloads: 111 This Week
    Last Update:
    See Project
  • 15

    yafu

    Automated integer factorization

    Check yafu on github for the latest code. YAFU (with assistance from other free software) uses the most powerful modern algorithms (and implementations of them) to factor input integers in a completely automated way. The automation within YAFU is state-of-the-art, combining factorization algorithms in an intelligent and adaptive methodology that minimizes the time to find the factors of arbitrary input integers. Most algorithm implementations are multi-threaded, allowing YAFU to fully utilize multi- or many-core processors (including SNFS, GNFS, SIQS, and ECM). YAFU is primarily a command-line driven tool. You provide the number to factor and, via screen output and log files, YAFU will provide you the factors. There is also an interactive environment similar to MATLAB or PARI/GP, where you can type commands and store results. YAFU is very customizable, through the optional use of many many command line parameters and a very capable expression inter
    Leader badge
    Downloads: 96 This Week
    Last Update:
    See Project
  • 16
    Quake3e

    Quake3e

    Improved Quake III Arena engine

    Quake3e is a modernized fork of id Software’s Quake III Arena engine, tailored for mod developers and competitive players. It includes numerous technical improvements while preserving the core gameplay and mod compatibility of the original. Focused on performance, security, and extended modding capabilities, it has become a popular base for competitive tournaments and engine forks. With its updated rendering path and support for high refresh rates, Quake3e offers a slick and responsive gameplay experience for old-school FPS fans.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 17
    Simple DirectMedia Layer

    Simple DirectMedia Layer

    Simple Directmedia Layer

    Simple DirectMedia Layer is a cross-platform development library designed to provide low-level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award-winning catalog and many Humble Bundle games. SDL officially supports Windows, macOS, Linux, iOS, and Android. Support for other platforms may be found in the source code. SDL is written in C, works natively with C++, and there are bindings available for several other languages, including C# and Python.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 18
    Shaderc

    Shaderc

    A collection of tools, libraries, and tests for Vulkan shader

    Shaderc is a collection of tools and libraries for compiling shaders—small programs that run on GPUs—into SPIR-V, the intermediate representation used by the Vulkan graphics API. It provides both a command-line tool (glslc) and a C/C++ library (libshaderc) that wrap the functionality of glslang (the Khronos reference compiler for GLSL) and SPIRV-Tools to deliver a modern, scriptable, and efficient shader compilation workflow. The glslc compiler offers a GCC/Clang-like interface for building GLSL and HLSL shaders, making it easy to integrate into existing build systems. Meanwhile, libshaderc exposes a stable API that allows developers to programmatically compile shader strings into SPIR-V modules within graphics engines and tools. Shaderc supports advanced features such as file inclusion (#include), concurrency, and cross-platform builds, and it maintains backward compatibility for long-term projects.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 19
    libvips

    libvips

    A fast image processing library with low memory needs

    libvips is a demand-driven, horizontally threaded image processing library. Compared to similar libraries, libvips runs quickly and uses little memory. libvips is licensed under the LGPL 2.1+. It has around 300 operations covering arithmetic, histograms, convolution, morphological operations, frequency filtering, colour, resampling, statistics and others. It supports a large range of numeric types, from 8-bit int to 128-bit complex. Images can have any number of bands. It supports a good range of image formats, including JPEG, JPEG2000, JPEG-XL, TIFF, PNG, WebP, HEIC, AVIF, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM / PGM / PFM, CSV, GIF, Analyze, NIfTI, DeepZoom, and OpenSlide. It can also load images via ImageMagick or GraphicsMagick, letting it work with formats like DICOM. It comes with bindings for C, C++, and the command-line. Full bindings are available for Ruby, Python, PHP, C# / .NET, Go, and Lua.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 20
    PJSIP

    PJSIP

    PJSIP project

    PJSIP is a free and open-source multimedia communication library written in C language implementing standard-based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE. It combines signaling protocol (SIP) with a rich multimedia framework and NAT traversal functionality into high-level API that is portable and suitable for almost any type of system ranging from desktops, and embedded systems, to mobile handsets. PJSIP is both compact and feature rich. It supports audio, video, presence, and instant messaging, and has extensive documentation. PJSIP is very portable. On mobile devices, it abstracts system-dependent features and in many cases is able to utilize the native multimedia capabilities of the device.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 21
    Acl

    Acl

    A powerful server and network library, including coroutine

    The Acl (Advanced C/C++ Library) project a is powerful multi-platform network communication library and service framework, supporting LINUX, WIN32, Solaris, FreeBSD, MacOS, AndroidOS, iOS. Many applications written by Acl run on these devices with Linux, Windows, iPhone and Android and serve billions of users. There are some important modules in Acl project, including network communcation, server framework, application protocols, multiple coders, etc. The common protocols such as HTTP/SMTP/ICMP//MQTT/Redis/Memcached/Beanstalk/Handler Socket are implemented in Acl, and the codec library such as XML/JSON/MIME/BASE64/UUCODE/QPCODE/RFC2047/RFC1035, etc., are also included in Acl. Acl also provides a unified abstract interface for popular databases such as Mysql, Postgresql, Sqlite. Using Acl library users can write database applications more easily, quickly and safely.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 22
    SDL

    SDL

    Simple DirectMedia Layer

    SDL (Simple DirectMedia Layer) is a cross-platform multimedia development library designed to provide low-level access to hardware components such as graphics, audio, input devices, and system resources, making it a foundational tool for building games, emulators, and interactive applications. It abstracts platform-specific functionality into a consistent API, allowing developers to write code once and deploy it across multiple operating systems including Windows, macOS, Linux, iOS, and Android. SDL is written in C but is compatible with C++ and has bindings for multiple other programming languages, making it highly flexible for different development environments. The library is not a game engine itself, but rather a hardware abstraction layer that enables developers to build engines or applications on top of it with full control over performance and rendering. It supports modern graphics APIs such as OpenGL, Vulkan, Direct3D, and Metal.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 23
    eCapture

    eCapture

    Capturing SSL/TLS plaintext without a CA certificate using eBPF

    Capture SSL/TLS text content without a CA certificate using eBPF. Supports Linux/Android kernel versions x86_64 4.18 and above, aarch64 5.5 and above. Does not support Windows and macOS systems.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 24
    DartNative

    DartNative

    Write iOS&macOS&Android Code using Dart

    dart_native is a runtime library that allows Dart to interact with native Objective-C and Java code directly. It enables Flutter and Dart apps to call native platform APIs without writing platform-specific code manually.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 25
    GLFW

    GLFW

    A multi-platform library for OpenGL, OpenGL ES, Vulkan, etc.

    GLFW is an Open Source, multi-platform library for OpenGL, OpenGL ES and Vulkan development on the desktop. It provides a simple API for creating windows, contexts and surfaces, receiving input and events. Gives you a window and OpenGL context with just two function calls. Support for OpenGL, OpenGL ES, Vulkan and related options, flags and extensions. Support for multiple windows, multiple monitors, high-DPI and gamma ramps. Support for keyboard, mouse, gamepad, time and window event input, via polling or callbacks. Comes with a tutorial, guides and reference documentation, examples and test programs. Open Source with an OSI-certified license allowing commercial use. Access to native objects and compile-time options for platform specific features. Community-maintained bindings for many different languages.
    Downloads: 8 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB