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.

  • Earn up to 16% annual interest with Nexo. Icon
    Earn up to 16% annual interest with Nexo.

    Let your crypto work for you

    Put idle assets to work with competitive interest rates, borrow without selling, and trade with precision. All in one platform. Geographic restrictions, eligibility, and terms apply.
    Get started with Nexo.
  • 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
  • 1
    LibVNCServer

    LibVNCServer

    LibVNCServer/LibVNCClient are cross-platform C libraries

    LibVNCServer, a library for easy implementation of a VNC server. VNC is a set of programs using the RFB (Remote Frame Buffer) protocol. They are designed to "export" a frame buffer via net: you set up a server and can connect to it via VNC viewers. If the server supports WebSockets (which LibVNCServer does), you can also connect using an in-browser VNC viewer like noVNC. LibVNCServer/LibVNCClient are cross-platform C libraries that allow you to easily implement VNC server or client functionality in your program.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 2
    Monitoring Plugins

    Monitoring Plugins

    A suite of Monitoring Plugins (formerly known as nagios-plugins)

    Monitoring Plugins is a collection of open-source plugins designed to work with Nagios and other monitoring systems. These plugins perform various checks on hosts and services, providing administrators with essential information about system health and performance. The suite includes a wide range of plugins written in C, Perl, and other languages.​
    Downloads: 2 This Week
    Last Update:
    See Project
  • 3
    Mundane

    Mundane

    Mundane is a Rust cryptography library backed by BoringSSL

    Mundane is a Rust cryptography library designed to be safe, ergonomic, and high-performance, with its cryptographic operations powered by BoringSSL. It aims to eliminate common security pitfalls by providing APIs that are intentionally difficult to misuse, prioritizing safety and correctness over flexibility. The library vendors its own copy of BoringSSL, ensuring consistent builds without external dependencies and avoiding symbol conflicts between different versions. Mundane emphasizes clarity in its cryptographic abstractions, making it accessible to developers while maintaining robust security guarantees. It is ideal for projects that need reliable, production-grade cryptography built directly on top of proven, well-tested C libraries.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 4
    Nuklear

    Nuklear

    A single-header ANSI C gui library

    Nuklear is an open source minimal-state, immediate-mode graphical user interface (GUI) toolkit written in ANSI C. It is designed to be lightweight, portable, and self-contained, requiring no external dependencies. The library is easy to integrate into existing applications by including a single header file, making it popular for game development, prototypes, and embedded systems. Nuklear supports a variety of UI elements such as windows, buttons, sliders, and text inputs, with customizable styling for flexibility. Its immediate-mode design emphasizes simplicity and low memory usage, enabling developers to create responsive interfaces with minimal overhead. As a public domain project, Nuklear is widely adopted in both professional and hobbyist projects for quick GUI development.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Train ML Models With SQL You Already Know Icon
    Train ML Models With SQL You Already Know

    BigQuery automates data prep, analysis, and predictions with built-in AI assistance.

    Build and deploy ML models using familiar SQL. Automate data prep with built-in Gemini. Query 1 TB and store 10 GB free monthly.
    Try Free
  • 5
    OneFile

    OneFile

    Curates delightful open-source projects

    OneFile curates delightful open-source projects that each consist of a single file, highlighting how much you can learn from compact, self-contained code. The collection spans tiny games, utilities, servers, interpreters, and teaching demos where the entire idea fits in one readable source. This “one file” constraint makes every example approachable—you can open it, grasp the full control flow, and experiment without navigating a large codebase. It’s ideal for learners seeking quick wins or for teachers looking for simple yet inspiring demos to showcase concepts. Each entry focuses on immediacy and fun, encouraging copying, running, and tweaking to see results instantly. The list format also makes it easy to discover new languages or paradigms without committing to heavyweight projects.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    libfabric

    libfabric

    AWS Libfabric

    The Open Fabrics Interfaces (OFI) is a framework focused on exporting fabric communication services to applications. Libfabric pre-built binaries may be available from other sources, such as Linux distributions. Elastic Fabric Adapter (EFA) is a network interface for Amazon EC2 instances that enables customers to run applications requiring high levels of inter-node communications at scale on AWS. Its custom-built operating system (OS) bypass hardware interface enhances the performance of inter-instance communications, which is critical to scaling these applications. With EFA, High Performance Computing (HPC) applications using the Message Passing Interface (MPI) and Machine Learning (ML) applications using NVIDIA Collective Communications Library (NCCL) can scale to thousands of CPUs or GPUs. As a result, you get the application performance of on-premises HPC clusters with the on-demand elasticity and flexibility of the AWS cloud.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    libplacebo

    libplacebo

    Official mirror of libplacebo

    libplacebo is a flexible, high-performance graphics library built on top of Vulkan, designed to provide reusable GPU-accelerated components for media applications. It originated as a core part of the rendering pipeline for the mpv media player and has since grown into a standalone library used for tone mapping, dithering, color space conversion, and more. libplacebo is ideal for developers looking to integrate sophisticated video rendering and post-processing into their own applications with full control over shaders and rendering stages.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 8
    The fstrcmp project provides a shared library for making fuzzy string comparisons, and also provides an fstrcmp command for use in shell scripts.
    Leader badge
    Downloads: 48 This Week
    Last Update:
    See Project
  • 9
    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: 18 This Week
    Last Update:
    See Project
  • $300 in Free Credit Towards Top Cloud Services Icon
    $300 in Free Credit Towards Top Cloud Services

    Build VMs, containers, AI, databases, storage—all in one place.

    Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
    Get Started
  • 10

    XLSX I/O

    C library for reading/writing values from/to Excel .xlsx files.

    Cross-platform C library for reading values from and writing values to .xlsx files. XLSX I/O aims to provide a C library for reading and writing .xlsx files. The .xlsx file format is the native format used by Microsoft(R) Excel(TM) since version 2007. The library was written with the following goals in mind: - primary focus on data values organized in tables, on not layout or graphics - written in standard C, but allows being used by C++ - simple interface - small footprint - portable across different platforms (Windows, *nix) - minimal dependancies: only depends on expat (only for reading) and libzip (which in turn depends on zlib) - separate library for reading and writing .xlsx files Also includes command line tools to convert between .xslx and CSV files.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 11
    PyGObject for Windows

    PyGObject for Windows

    All-In-One PyGI/PyGObject for Windows Installer

    Cross-platform python dynamic bindings of GObject-based libraries for Windows 32-bit and 64-bit.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 12
    QtContribs - Harbour Qt Projects

    QtContribs - Harbour Qt Projects

    New home to HbQt, HbIDE & HbDBU once Harbour SVN hosted contribs.

    This is the repository to host all those Harbour's contrib libraries and applications which could not comply with strict Harbour project goals but had the potentiality to march into the future. The goal is to keep this repository parallel with Harbours contrib and use the same build system which Harbour uses. This way it will be possible easily to shift any library/application from here to Harbour or vice-verse. As I am totally ignorant of Harbour's build system, it will be appreciated if someone knowledgeable take over this responsibility, which might be one-time task. Welcome to new chapter in Harbour history! Pritpal Bedi a student of software analysis & concepts
    Downloads: 10 This Week
    Last Update:
    See Project
  • 13
    LinAsm

    LinAsm

    Collection of fast and optimized assembly libraries for x86-64 Linux

    LinAsm is collection of very fast and SIMD optimized assembly written libraries for x86-64 Linux. It implements many common and widely used algorithms for array manipulations: searching, sorting, arithmetic and vector operations, unit conversions; fast mathematical and statistic functions; numbers and time converting algorithms; finite impulse response (FIR) digital filters; spectrum analysis algorithms, Fast Hartley transformation; CPU cache friendly functions and extremely fast abstract data types (ADT) such as hash tables b-trees, and much more. LinAsm libraries are written on FASM assembly language. They are stable and have appropriate benchmarks for many units. All libraries are well documented and grouped by their functionality. To get more information about this library, please visit the official web site: http://linasm.sourceforge.net
    Downloads: 21 This Week
    Last Update:
    See Project
  • 14

    libquickmail

    C library for sending e-mail (with attachments) from C/C++

    C library intended to give C/C++ developers a quick and easy way to send e-mail from their applications. Supports multiple To/Cc/Bcc recipients and multiple attachments without size limitation. For the actual SMTP communication either libcurl can be used or the built in SMTP support. The library can also be used to just create a multipart MIME message body. Also comes with a command line application (quickmail) for sending mails (mutiple attachments supported) from command line or scripts. Cross-platform. Binary packages available for Windows (32-bit and 64-bit).
    Downloads: 15 This Week
    Last Update:
    See Project
  • 15

    FFmpeg for Android

    Configure and build FFmpeg library with Android NDK

    FFmpeg for Android is a set of Android makefiles which enable configuration and building FFmpeg library under Android source code tree with Android NDK.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 16

    FSP - File Service Protocol Suite

    UDP File transfer protocol

    FSP - File Service Protocol. FSP is lightweight UDP based protocol for transferring files. It is designed for anonymous transfers over unreliable networks.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 17
    Fast Artificial Neural Network Library is a free open source neural network library, which implements multilayer artificial neural networks in C with support for both fully connected and sparsely connected networks. Cross-platform execution in both fixed and floating point are supported. It includes a framework for easy handling of training data sets. It is easy to use, versatile, well documented, and fast. Bindings to more than 15 programming languages are available. An easy to read introduction article and a reference manual accompanies the library with examples and recommendations on how to use the library. Several graphical user interfaces are also available for the library.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 18

    libgaminggear

    Provides functionality for gaming input devices

    Downloads: 29 This Week
    Last Update:
    See Project
  • 19
    AWS IoT Device Defender Library

    AWS IoT Device Defender Library

    Client library for using AWS IoT Defender service on embedded devices

    The Device Defender library enables you to send device metrics to the AWS IoT Device Defender Service. This library also supports custom metrics, a feature that helps you monitor operational health metrics that are unique to your fleet or use case. For example, you can define a new metric to monitor the memory usage or CPU usage on your devices. This library has no dependencies on any additional libraries other than the standard C library, and therefore, can be used with any MQTT client library. This library is distributed under the MIT Open Source License. This library has gone through code quality checks including verification that no function has a GNU Complexity score over 8, and checks against deviations from mandatory rules in the MISRA coding standard. Deviations from the MISRA C:2012 guidelines are documented under MISRA Deviations. This library has also undergone static code analysis using Coverity static analysis.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    AWS IoT Jobs library

    AWS IoT Jobs library

    Client library for using AWS IoT Jobs service on embedded devices

    The AWS IoT Jobs library helps you notify connected IoT devices of a pending Job. A Job can be used to manage your fleet of devices, update firmware and security certificates on your devices, or perform administrative tasks such as restarting devices and performing diagnostics. It interacts with the AWS IoT Jobs service using MQTT, a lightweight publish-subscribe protocol. This library provides a convenience API to compose and recognize the MQTT topic strings used by the Jobs service. The library is written in C compliant with ISO C90 and MISRA C:2012, and is distributed under the MIT Open Source License. This library has gone through code quality checks including verification that no function has a GNU Complexity score over 8, and checks against deviations from mandatory rules in the MISRA coding standard. Deviations from the MISRA C:2012 guidelines are documented under MISRA Deviations. This library has also undergone both static code analysis from Coverity.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    MATIO

    MATIO

    MATLAB MAT File I/O Library

    MATLAB MAT file I/O library. Matio is an open-source C library for reading and writing binary MATLAB MAT files. This library is designed for use by programs/libraries that do not have access or do not want to rely on MATLAB's shared libraries.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    MLX42

    MLX42

    Codam's own fixed, functioning alternative of the miniLibX

    MLX42 is a modern C graphics and windowing library built on top of GLFW and inspired by the original MLX library used in 42 school projects. It aims to provide a higher-level, beginner-friendly abstraction for students learning about graphical programming, while also embracing modern practices like event-driven input, texture rendering, and transparency. MLX42 is structured to reduce boilerplate and simplify the creation of games or interactive applications in C, making it an excellent learning and teaching tool for graphics programming fundamentals.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    NSync

    NSync

    nsync is a C library that exports various synchronization primitives

    nsync is a portable C library that provides a collection of advanced synchronization primitives designed to facilitate safe and efficient multithreaded programming. It offers reader-writer locks, condition variables, run-once initialization, waitable counters, and waitable bits for coordination and cancellation between threads. Unlike traditional pthreads-based synchronization, nsync introduces conditional critical sections, allowing developers to wait for arbitrary conditions without explicit signaling or complex loop-based logic. This approach simplifies concurrency management and often improves readability and maintainability of multithreaded code. The library emphasizes efficiency, with locks and condition variables occupying minimal memory and supporting cancellation mechanisms through nsync_note objects rather than thread-level cancellation. Designed with portability and performance in mind, nsync can be compiled on Unix-like systems and Windows using a C90 compiler.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    Particle Firmware for the Electron, P1

    Particle Firmware for the Electron, P1

    Device OS (Firmware) for particle devices

    The Photon uses an ARM Cortex M3 CPU based microcontroller. All of the code is built around the GNU GCC toolchain offered and maintained by ARM. The build requires version 5.3.1 20160307 or newer of ARM GCC and will print an error message if the version is older than this. In order to turn your source code into binaries, you will need a tool called make. Windows users need to explicitly install make on their machines. Make sure you can use it from the terminal window. The entire Particle firmware is contained in this repository. The main user code sits in the application.cpp file under firmware/user/src/ folder. Unless you know what you are doing, refrain from making changes to any other files. After you are done editing the files, you can rebuild the repository by running the make command in the firmware/main/ directory. If you have made changes to any of the other directories, make automatically determines which files need to be rebuilt and builds them for you.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    SuiteSparse

    SuiteSparse

    The official SuiteSparse library: a suite of sparse matrix algorithms

    The official SuiteSparse library: a suite of sparse matrix algorithms authored or co-authored by Tim Davis, Texas A&M University.
    Downloads: 1 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB