[go: up one dir, main page]

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.

  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    The database for AI-powered applications.

    MongoDB Atlas is the developer-friendly database used to build, scale, and run gen AI and LLM-powered apps—without needing a separate vector database. Atlas offers built-in vector search, global availability across 115+ regions, and flexible document modeling. Start building AI apps faster, all in one place.
    Start Free
  • Ditto Edge Server is a lightweight standalone server for resource-constrained edge environments, based on the core Ditto Edge SDK. Icon
    Ditto Edge Server is a lightweight standalone server for resource-constrained edge environments, based on the core Ditto Edge SDK.

    With Ditto Edge Server, you can join devices as small as a Raspberry Pi to a local mesh network and synchronize data across edge environments.

    Ditto's Edge SDK is the only thing your edge devices need to ensure your application is operational in any environment, regardless of network conditions.
    Learn More
  • 1
    libjpeg-turbo

    libjpeg-turbo

    SIMD-accelerated libjpeg-compatible JPEG codec library

    libjpeg-turbo is a JPEG image codec that uses SIMD instructions (MMX, SSE2, NEON, AltiVec) to accelerate baseline JPEG compression and decompression on x86, x86-64, ARM, and PowerPC systems. On such systems, libjpeg-turbo is generally 2-6x as fast as libjpeg, all else being equal. On other types of systems, libjpeg-turbo can still outperform libjpeg by a significant amount, by virtue of its highly-optimized Huffman coding routines. In many cases, the performance of libjpeg-turbo rivals that of proprietary high-speed JPEG codecs. libjpeg-turbo implements both the traditional libjpeg API as well as the less powerful but more straightforward TurboJPEG API. libjpeg-turbo also features colorspace extensions that allow it to compress from/decompress to 32-bit and big-endian pixel buffers (RGBX, XBGR, etc.), as well as a full-featured Java interface.
    Leader badge">
    Downloads: 46,434 This Week
    Last Update:
    See Project
  • 2

    opencore-amr

    Audio codecs extracted from Android Open Source Project

    Library of OpenCORE Framework implementation of Adaptive Multi Rate Narrowband and Wideband (AMR-NB and AMR-WB) speech codec. Library of VisualOn implementation of Adaptive Multi Rate Wideband (AMR-WB) encoder and Advanced Audio Coding (AAC) encoder. Modified library of Fraunhofer AAC decoder and encoder.
    Leader badge">
    Downloads: 6,737 This Week
    Last Update:
    See Project
  • 3
    LuaBinaries
    LuaBinaries is a distribution of the Lua libraries and executables compiled for several platforms.
    Leader badge">
    Downloads: 4,832 This Week
    Last Update:
    See Project
  • 4
    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,780 This Week
    Last Update:
    See Project
  • Create custom docs, forms, apps, e-signatures, and surveys with Titan. Icon
    Create custom docs, forms, apps, e-signatures, and surveys with Titan.

    Powerful no-code digital experiences for Salesforce

    Create custom docs, forms, apps, e-signatures, and surveys with Titan’s full-suite of enterprise applications designed to integrate seamlessly with Salesforce data across your entire organization. #1 on the Salesforce appexchange
    Learn More
  • 5
    The OpenGL Extension Wrangler Library
    The OpenGL Extension Wrangler Library is a simple tool that helps C/C++ developers initialize extensions and write portable applications. GLEW currently supports a variety of operating systems, including Windows, Linux, Darwin, Irix, and Solaris.
    Leader badge">
    Downloads: 3,347 This Week
    Last Update:
    See Project
  • 6
    QB64

    QB64

    BASIC for the modern era

    QB64 is a modern self-hosting BASIC compiler that brings classic QBasic/QuickBASIC programs into the modern era. It enables legacy code to run on today’s operating systems with minimal modifications, while also introducing new commands and libraries for multimedia, networking, and 64-bit computing. QB64 compiles to C++ and includes a built-in IDE, making it accessible for beginners, hobbyists, and retro programming enthusiasts. It aims to preserve the ease and nostalgia of BASIC while expanding its capabilities for contemporary development.
    Downloads: 630 This Week
    Last Update:
    See Project
  • 7
    Octave Forge

    Octave Forge

    A collection of packages providing extra functionality for GNU Octave

    Octave Forge is a central location for collaborative development of packages for GNU Octave. The Octave Forge packages expand Octave's core functionality by providing field specific features via Octave's package system. See https://octave.sourceforge.io/packages.php for a list of all available packages. GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. Octave is normally used through its interactive command line interface, but it can also be used to write non-interactive programs. The Octave language is quite similar to Matlab so that most programs are easily portable. Refer to https://www.octave.org for more information.
    Leader badge">
    Downloads: 1,836 This Week
    Last Update:
    See Project
  • 8
    GTK+2 for Windows Runtime Environment

    GTK+2 for Windows Runtime Environment

    The files required to run GTK+ applications on Windows

    This is the GTK+2 Runtime Environment Installer for Windows. It includes all of the files required to run GTK+2 applications on Windows. Some support tools are also available. This project is no longer maintained. Please use its successor: https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer
    Leader badge">
    Downloads: 1,894 This Week
    Last Update:
    See Project
  • 9
    raylib

    raylib

    A simple and easy-to-use library to enjoy videogames programming

    raylib is highly inspired by Borland BGI graphics lib and by XNA framework. Do you want to see all functions available in raylib? Check raylib cheatsheet. raylib is a programming library to enjoy videogames programming; no fancy interface, no visual helpers, no auto-debugging, just coding in the most pure spartan-programmers way. raylib has received several recognitions in the last years and many people have written about the library. Here there are the main awards received from Google and Epic Games. raylib supports multiple target platforms, it has been tested in the following platforms but, technically, any platform that supports C language and OpenGL graphics is valid for raylib or can be very easily ported to. raylib can be combined with several extra libraries for additional functionality, some of those libraries are already used internally while others are provided for user integration, most of these libraries are single-file header-only with no external dependencies.
    Downloads: 187 This Week
    Last Update:
    See Project
  • The sales CRM that makes your life easy, so all you have to do is sell. Icon
    The sales CRM that makes your life easy, so all you have to do is sell.

    The simpler way to sell

    Welcome to the simpler way to sell. Pipedrive is CRM software that makes your life easy, for less legwork and more sales. Let us track your sales conversations, eliminate admin tasks, get you more leads and uncover how you win, because your day belongs to you. Join more than 100,000 sales teams around the world that use the CRM rated #1 by SoftwareReviews in 2019. Start your free 14-day trial and get full access – no credit card needed.
    Try it free
  • 10
    AppSync

    AppSync

    Unified AppSync dynamic library for iOS 5 and above

    AppSync is a tool that enables sideloading and installation of unsigned iOS applications. It allows developers and users to install apps without requiring a paid Apple Developer account.
    Downloads: 145 This Week
    Last Update:
    See Project
  • 11
    OpenCorePkg

    OpenCorePkg

    OpenCore bootloader

    OpenCorePkg is an open-source, modular UEFI (Unified Extensible Firmware Interface) bootloader and development framework, primarily designed to enable macOS booting on non-Apple hardware (Hackintosh). It includes Apple-specific UEFI drivers, utilities for macOS installation support, and shared libraries used across Acidanthera projects. Apple disk image loading support. Apple keyboard input aggregation. Apple PE image signature verification. Apple UEFI secure boot supplemental code. Audio management with screen reading support. Basic ACPI and SMBIOS manipulation.
    Downloads: 143 This Week
    Last Update:
    See Project
  • 12
    OpenSSL Project

    OpenSSL Project

    TLS/SSL and crypto library

    OpenSSL is a robust, commercial-grade, full-featured Open Source Toolkit for the TLS (formerly SSL), DTLS and QUIC (currently client-side only) protocols. The protocol implementations are based on a full-strength general-purpose cryptographic library, which can also be used stand-alone. Also included is a cryptographic module validated to conform with FIPS standards. OpenSSL is descended from the SSLeay library developed by Eric A. Young and Tim J. Hudson.
    Downloads: 84 This Week
    Last Update:
    See Project
  • 13
    usbmuxd

    usbmuxd

    A socket daemon to multiplex connections from and to iOS devices

    A socket daemon to multiplex connections from and to iOS devices. usbmuxd stands for "USB multiplexing daemon". This daemon is in charge of multiplexing connections over USB to an iOS device. The daemon is automatically started by udev or systemd depending on what you have configured upon hotplug of an iOS device and exits if the last device was unplugged. When usbmuxd is running it provides a socket interface at /var/run/usbmuxd that is designed to be compatible with the socket interface that is provided on macOS. You should also create an usbmux user that has access to USB devices on your system. Alternatively, just pass a different username using the -U argument. usbmuxd is not used for tethering data transfers which uses a dedicated USB interface to act as a virtual network device. The higher-level layers, especially if you want to write an application to interact with the device, are handled by libimobiledevice.
    Downloads: 66 This Week
    Last Update:
    See Project
  • 14
    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: 43 This Week
    Last Update:
    See Project
  • 15
    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: 42 This Week
    Last Update:
    See Project
  • 16
    Mikmod Sound System
    Mikmod is a module player and library supporting many formats, including mod, s3m, it, and xm. Originally a player for MS-DOS, MikMod has been ported to other platforms, such as Unix, Macintosh, BeOS, and Java(!!)
    Leader badge">
    Downloads: 602 This Week
    Last Update:
    See Project
  • 17
    GLFW

    GLFW

    A project that has moved to GitHub

    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.
    Leader badge">
    Downloads: 183 This Week
    Last Update:
    See Project
  • 18
    Extended Module Player

    Extended Module Player

    A multi-format module player and library

    libxmp is a library that renders module files to PCM data. xmp is a module player for Unix-like systems, based on libxmp, that plays over 90 mainstream and obscure module formats from Amiga, Atari, Acorn, Apple IIgs and PC, including Protracker (MOD), Scream Tracker 3 (S3M), Fast Tracker II (XM) and Impulse Tracker (IT) files.
    Leader badge">
    Downloads: 235 This Week
    Last Update:
    See Project
  • 19
    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: 29 This Week
    Last Update:
    See Project
  • 20
    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: 26 This Week
    Last Update:
    See Project
  • 21
    Curl

    Curl

    Command line tool and library for transferring data with URLs

    Curl is a command line tool and library for transferring data specified with URL syntax. It supports HTTP, HTTPS, FTP, FTPS, GOPHER, TFTP, SCP, SFTP, SMB, TELNET, DICT, SSL certificates, cookies, user+password authentication, and so much more! Curl is used for many different things. It's used in command lines or scripts for transferring data. It's also used in just about every device you can think of: mobile phones and tablets, television sets, printers, routers, media players and other audio equipment. Curl is also the internet transfer backbone for thousands of software applications being used extensively throughout the world today. Curl is feature-rich, thread-safe, well supported and fast. It is also highly portable and works on numerous platforms, including Solaris, NetBSD, FreeBSD, OpenBSD, Linux, Mac OS X, Windows, Darwin, UnixWare, HURD, BeOS, Ultrix, QNX, DOS, Symbian, and many more.
    Downloads: 24 This Week
    Last Update:
    See Project
  • 22
    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: 22 This Week
    Last Update:
    See Project
  • 23
    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: 19 This Week
    Last Update:
    See Project
  • 24
    Expat

    Expat

    Fast streaming XML parser written in C99 with >90% test coverage

    Welcome to Expat, a stream-oriented XML parser library written in C. Expat excels with files too large to fit RAM, and where performance and flexibility are crucial. There are a number of applications, libraries, and hardware using Expat, as well as bindings and 3rd-party wrappers. Expat is packaged everywhere. This is Expat, a C99 library for parsing XML 1.0 Fourth Edition, started by James Clark in 1997. Expat is a stream-oriented XML parser. This means that you register handlers with the parser before starting the parse. These handlers are called when the parser discovers the associated structures in the document being parsed. A start tag is an example of the kind of structure for which you may register handlers.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 25
    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: 16 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next