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

  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • Host LLMs in Production With On-Demand GPUs Icon
    Host LLMs in Production With On-Demand GPUs

    NVIDIA L4 GPUs. 5-second cold starts. Scale to zero when idle.

    Deploy your model, get an endpoint, pay only for compute time. No GPU provisioning or infrastructure management required.
    Try Free
  • 1
    Urbit

    Urbit

    An operating function

    Urbit is a personal server stack built from scratch. It has an identity layer (Azimuth), virtual machine (Vere), and operating system (Arvo). A running Urbit "ship" is designed to operate with other ships peer-to-peer. Urbit is a general-purpose, peer-to-peer computer and network. Urbit is for everyone, but sometimes it is easy to get lost in this universe. It solves the hard problems of implementing a peer-to-peer network (including identity, NAT traversal, and exactly-once delivery) in the kernel so app developers can focus on business logic. The entire OS is a single pure function that provides application developers with strong guarantees: automated persistence and memory management, repeatable builds, and support for hot code reloading. Urbit is a personal OS designed from scratch to run peer-to-peer applications. A clean-slate OS and network for the 21st century.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 2
    A software toolkit for using the EPCglobal Low Level Reader Protocol (LLRP) to communicate with conforming RFID readers.
    Downloads: 43 This Week
    Last Update:
    See Project
  • 3
    next-scripting

    next-scripting

    Next Scripting Framework (NSF)

    The Next Scripting Framework (NSF) was developed based on the notion of language-oriented programming. The framework allows a language developer to work with multiple object systems on top of Tcl in a single workspace. The developer can benefit from a rich and extensible set of predefined functions (typically implemented in C) which can be registered for use on objects and classes in a given object system. NSF provides a tool box for defining dynamic, object-oriented, and domain-specific languages. NSF ships with 3 fully scripted language definitions, containing XOTcl 2 and the Next Scripting language NX. NX is a highly flexible and object-oriented scripting language. It is a descendant of XOTcl and was designed based on 10 years of experience with XOTcl in projects containing several hundred thousand lines of code. While XOTcl was the first language designed to provide language support for design patterns, NX adds language-oriented programming and higher safety.
    Leader badge
    Downloads: 56 This Week
    Last Update:
    See Project
  • 4
    Flecs

    Flecs

    A fast entity component system (ECS) for C & C++

    Flecs is a fast and lightweight Entity Component System that lets you build games and simulations with millions of entities (join the Discord!). Here are some of the framework's highlights. Fast zero dependency C99 API. Modern type-safe C++11 API that doesn't use STL containers. Minimal ECS core with optional addons. Entire codebase builds in less than 5 seconds. Runs in the browser without modifications with emscripten. Cache-friendly archetype/SoA storage that can process millions of entities every frame. Supports entities with hundreds of components and applications with tens of thousands of archetypes. Automatic component registration that works out of the box across shared libraries/DLLs. First open-source ECS with full support for Entity Relationships! Write free functions with queries or run code automatically in systems. Compiles warning-free on 8 compilers on all major platforms, with CI running more than 4000 tests.
    Downloads: 2 This Week
    Last Update:
    See Project
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Try Free
  • 5
    LuatOS

    LuatOS

    Powerful embedded Lua Engine for IoT devices, with many components

    Powerful embedded Lua Engine for IoT devices, with many components and low memory requirements (16K RAM, 128K Flash).
    Downloads: 2 This Week
    Last Update:
    See Project
  • 6
    Tesseract OCR iOS

    Tesseract OCR iOS

    Tesseract OCR iOS is a Framework for iOS7+

    Use Tesseract OCR in iOS 9.0+ projects written in either Objective-C or Swift. Easy and fast. Tesseract OCR iOS and TesseractOCR.framework are distributed under the MIT license. These are the current versions of the upstream bundled libraries within the framework that this repository provides, Tesseract 3.03-rc1, Leptonica 1.72, Image libraries, Libtiff 4.0.4, Libpng 1.6.18, and Libjpeg 9a.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 7
    CD
    CD (Canvas Draw) is a platform-independent graphics library. It is implemented in several platforms using native graphics libraries: Windows (GDI) and X-Windows (XLIB). The canvas is an abstract surface that can be a window, an image or a metafile.
    Leader badge
    Downloads: 49 This Week
    Last Update:
    See Project
  • 8

    OpenGL Software Development Kit

    Utility libraries for working with OpenGL.

    The Unofficial OpenGL SDK is a collection of utility libraries designed to make it easy to learn the exciting world of 3D programming with the OpenGL library. This project is not associated with The Khronos Group.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 9

    CPoll based C++ server pages

    Server side scripting language similar to ASP and PHP, but using C++.

    CPPSP (C++ Server Pages) is an open source web application framework similar to ASP.NET. It features a template parser that parses, compiles, and loads CPPSP pages automatically at runtime. CPPSP pages have a very similar syntax to ASP and ASP.NET, where all code is considered HTML by default, and server-side active code can be embedded using "<% ... %>". CPPSP is built upon the CPoll asynchronous I/O and utility library, which offers simple I/O abstraction, network abstraction, memory management, and container classes. CPPSP project home page: http://xa.us.to/cppsp/index.cppsp Main development happens on github at: https://github.com/xaxaxa/workspace/ Documentation is currently being worked on, but there is a doxygen reference at: http://xa.us.to/cppsp/doxygen/html/classcppsp_1_1_page.html GCC 4.7 or above is required even for the binary release because .cppsp pages need to be compiled at runtime. CPPSP currently only supports linux (due to the use of epoll).
    Leader badge
    Downloads: 39 This Week
    Last Update:
    See Project
  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Get Started Free
  • 10
    IM
    IM is a toolkit for Digital Imaging. IM is based on 4 concepts: Image Representation, Storage, Processing and Capture. The main goal of the library is to provide a simple API and abstraction of images for scientific applications.
    Leader badge
    Downloads: 43 This Week
    Last Update:
    See Project
  • 11
    wxLua
    wxLua is a Lua scripting language wrapper for the wxWidgets cross-platform GUI library. It consists of executables for editing, running, and debugging wxLua scripts, a library for extending C++ programs with a fast, small, fully embeddable scripting language, and a variety of sample programs. With wxLua you can quickly write full-featured programs with graphics, networking, printing, etc. for MS Windows, Linux, and OSX.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 12
    MARIE is a robotic development and integration environment focused on software reusability and exploitation of already available APIs and middlewares used in robotics. Its main purpose is to create a rapid-prototyping approach to robotics developments.
    Leader badge
    Downloads: 18 This Week
    Last Update:
    See Project
  • 13
    Wiiuse is a library written in C that connects with several Nintendo Wii wiimotes. Supports motion sensing, IR tracking, nunchuk, classic controller, and the Guitar Hero 3 controller. Single threaded and nonblocking makes a light weight and clean API.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 14
    AWS IoT Device Shadow library

    AWS IoT Device Shadow library

    Client library for using AWS IoT Shadow service on embedded devices

    The AWS IoT Device Shadow library enables you to store and retrieve the current state (the “shadow”) of every registered device. The device’s shadow is a persistent, virtual representation of your device that you can interact with from AWS IoT Core even if the device is offline. The device state is captured as its “shadow” within a JSON document. The device can send commands over MQTT to get, update and delete its latest state as well as receive notifications over MQTT about changes in its state. Each device’s shadow is uniquely identified by the name of the corresponding “thing”, a representation of a specific device or logical entity on the AWS Cloud. See Managing Devices with AWS IoT for more information on IoT "thing". More details about AWS IoT Device Shadow can be found in AWS IoT documentation. This library is distributed under the MIT Open Source License.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    Criterion

    Criterion

    A cross-platform C and C++ unit testing framework for the 21st century

    Most test frameworks for C require a lot of boilerplate code to set up tests and test suites -- you need to create a main, then register new test suites, then register the tests within these suites, and finally call the right functions. This gives the user great control, at the unfortunate cost of simplicity. Criterion follows the KISS principle, while keeping the control the user would have with other frameworks. Supports parameterized tests and theories. Progress and statistics can be followed in real time with report hooks. TAP output format can be enabled with an option. Runs on Linux, FreeBSD, macOS, and Windows (Compiling with MinGW GCC and Visual Studio 2015+). If you'd like to see Criterion included in your favorite distribution, please reach out to their package maintainers team. A default entry point is provided, no need to declare a main unless you want to do special handling.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    CrossC2 framework

    CrossC2 framework

    generate CobaltStrike's cross-platform payload

    Support CobaltStrike's security assessment of other platforms (Linux/MacOS/...), and include the development support of Unix post-penetration module.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    Dunst

    Dunst

    Lightweight and customizable notification daemon

    Dunst is a lightweight replacement for the notification daemons provided by most desktop environments. It’s very customizable, isn’t dependent on any toolkits, and therefore fits into those window manager-centric setups we all love to customize to perfection. Customize fonts, icons, timeouts, and more. Are you unhappy with the default shortcuts and colors? No worries, you can change these all with a simple configuration file tweak. Change the look or behavior of notifications matching a specified pattern. You could use this to change the color of message notifications from your favorite jabber buddies, or to prevent important work email notifications from disappearing until you manually dismiss them. Specify the monitor that notifications should display on, or have them appear on the monitor with keyboard or mouse focus. Catch an unread notification disappearing from the corner of your eye? Just tap a keyboard shortcut to replay the last notification.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    FACIL.IO

    FACIL.IO

    Your high performance web application C framework

    facil.io is an evented Network library written in C. facil.io provides high performance TCP/IP network services by using an evented design that was tested to provide an easy solution to the C10K problem. facil.io includes a mini-framework for Web Applications, with a fast HTTP / WebSocket server, integrated Pub/Sub, optional Redis connectivity, easy JSON handling, Mustache template rendering and more nifty tidbits. facil.io powers the HTTP/Websockets Ruby Iodine server and it can easily power your application as well. facil.io is easy to code with and aims at minimizing the developer's learning curve. In addition to detailed documentation and examples, the API is unified in style and the same types and API used for HTTP requests is used for JSON and Mustache rendering - so there's less to learn. facil.io should work on Linux / BSD / macOS (and possibly CYGWIN) and is continuously tested on both Linux and macOS.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    F·W·K

    F·W·K

    3D game engine/framework in C, with Luajit and Python bindings now

    3D game framework in C, with Luajit and Python bindings now.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    LCUI

    LCUI

    A small C library for building user interfaces with C, XML and CSS

    Build simple desktop apps with C, XML and CSS. LCUI is a simple GUI library, it is written in C, supports XML and CSS, you can use C, XML and CSS to build simple desktop applications, at present it is mainly supported by Windows, subsequent versions will improve support for Linux. If you have web development experience, then the use of LCUI will be easier to get started, because LCUI's XML, CSS, and element layout processing effects are similar to web browser, you can refer to the sample code on the left to learn about the effect. Supports the use of XML and CSS to describe the GUI layout and style, saving interface development time and maintenance costs. Support for Windows and Linux, you can write Windows Desktop apps and Universal Windows Platform apps, as well as Linux Desktop apps. To get started with LCUI, you can using lcui-cli to create an LCUI project, then compile and run it.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    Themis

    Themis

    Easy to use cryptographic framework for data protection

    Cross-platform high-level cryptographic library. Themis helps to build simple and complex cryptographic features easily, quickly, and securely. It’s a perfect fit for multi-platform apps. Themis hides cryptographic details and eliminates popular mistakes. Themis provides ready-made building blocks (“cryptosystems”) for secure data storage, message exchange, socket connections, and authentication. Secure Cell is a multi-mode cryptographic container suitable for storing anything from encrypted files to database records. Use Secure Cell to encrypt data at rest. Secure Cell is built around AES-256-GCM, and AES-256-CTR. Secure Message is a simple encrypted messaging solution for the widest scope of applications. Use Secure Message to send encrypted and signed data from one user to another, from client to server, to prevent MITM attacks and avoid single secret leakage. Based on ECC + ECDSA / RSA + PSS + PKCS#7.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    UACMe

    UACMe

    Defeating Windows user account control

    Run executable from command line, akagi32 [Key] [Param] or akagi64 [Key] [Param]. First parameter is a number of methods to use, second is an optional command (executable file name including full path) to run. The second parameter can be empty - in this case, the program will execute elevated cmd.exe from the system32 folder. Since 3.5.0 version all "fixed" methods are considered obsolete and removed altogether with all supporting code/units. If you still need them. This tool shows ONLY popular UAC bypass method used by malware, and re-implement some of them in a different way improving original concepts. There are different, not yet known to the general public, methods. This tool is not intended for AV tests and not tested to work in aggressive AV environment, if you still plan to use it with installed bloatware AV soft, use it at your own risk.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    Vis

    Vis

    A vi-like editor based on Plan 9's structural regular expressions

    Vis aims to be a modern, legacy-free, simple yet efficient editor, combining the strengths of both vi(m) and sam. It extends vi's modal editing with built-in support for multiple cursors/selections and combines it with sam's structural regular expression-based command language. A universal editor, it has decent Unicode support and should cope with arbitrary files, including large, binary, or single-line ones. Efficient syntax highlighting is provided using Parsing Expression Grammars, which can be conveniently expressed using Lua in the form of LPG. The editor core is written in a reasonable amount of clean (your mileage may vary), modern and legacy-free C code, enabling it to run in resource-constrained environments. The implementation should be easy to hack on and encourage experimentation. There is also a Lua API for in-process extensions. Vis strives to be simple and focuses on its core task: efficient text management.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    WCDB

    WCDB

    Cross-platform database framework developed by WeChat

    WCDB is an efficient, complete, easy-to-use mobile database framework used in the WeChat application. It's currently available on iOS, macOS and Android. Easy-to-use. Through WCDB, you can get objects from database in one line code. WINQ (WCDB language integrated query), WINQ is a native data querying capability which frees developers from writing glue code to concatenate SQL query strings. ORM (Object Relational Mapping), WCDB provides a flexible, easy-to-use ORM for creating tables, indices and constraints, as well as CRUD through ObjC objects. Efficient. Through the framework layer and sqlcipher source optimization, WCDB have more efficient performance. Multi-threaded concurrency, WCDB supports concurrent read-read and read-write access via connection pooling. ORM/persistence solution via Room from Android Architecture Components. Concurrent access via connection pooling from modern Android framework. Repair toolkit for database corruption recovery.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    SIGAR (System Information Gatherer and Reporter) is a cross-platform, cross-language library and command-line tool for accessing operating system and hardware level information in Java, Perl and .NET.
    Leader badge
    Downloads: 9 This Week
    Last Update:
    See Project