C Library

Open-source C projects categorized as Library

Top 23 C Library Projects

  • libcurl

    A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features

  • Project mention: Google, Cloudflare and Cisco Will Poison DNS to Stop Piracy Block Circumvention | news.ycombinator.com | 2024-06-17

    There are lots of providers that aren’t CloudFlare/Google/etc: https://github.com/curl/curl/wiki/DNS-over-HTTPS#publicly-av...

    (There’s lots of smaller providers, but lots operated by governments, ccTLD administrators, and other major organizations)

    I only bring this up because the idea that the major providers “are” the internet is the only reason this is a possible and a problem in the first place.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • webview

    Tiny cross-platform webview library for C/C++. Uses WebKit (GTK/Cocoa) and Edge WebView2 (Windows).

  • Project mention: webview: Tiny cross-platform webview library for C/C++ | news.ycombinator.com | 2024-05-28
  • FreeRDP

    FreeRDP is a free remote desktop protocol library and clients

  • Project mention: FreeRDP 3.2.0 | news.ycombinator.com | 2024-01-19
  • libgit2

    A cross-platform, linkable library implementation of Git that you can use in your application.

  • Project mention: Radicle: Open-Source, Peer-to-Peer, GitHub Alternative | news.ycombinator.com | 2024-03-05

    Everything that is replicated on the network is stored as a Git object, using the libgit2[0] library. This library uses hardened SHA-1 internally, which is called sha1dc (for "detect collision").

    [0]: https://github.com/libgit2/libgit2/blob/ac0f2245510f6c75db1b...

  • libimobiledevice

    A cross-platform protocol library to communicate with iOS devices

  • Project mention: Apple's APFS Migration: A Feat of Engineering | news.ycombinator.com | 2024-04-15

    No smartphone these days gives you access at the mass storage level anymore (because it causes issues for concurrent access from the phone and computer, because there's often encryption etc.), so the underlying file system in this scenario is completely irrelevant and has no bearing on you being able to access the phone's data on Linux.

    Android uses MTP or PTP (can't remember which) for that type of access, while iOS uses something proprietary, but there's a Linux implementation that worked reasonably well for me last time I had a Linux laptop: https://libimobiledevice.org/

  • lwan

    Experimental, scalable, high performance HTTP server

  • Project mention: Fast Linked Lists | news.ycombinator.com | 2024-05-14

    This is roughly what my JSON parser does. It does type-checking, albeit without using JSON-schema, but an object descriptor that you have to define to parse and generate JSON.

    It's been developed for embedded systems (it was written originally for a NATS implementation in the Zephyr RTOS), so it's a bit limited and there's no easy way to know where some parsing/type validation error happened, but the information is there if one wants to obtain it: https://github.com/lpereira/lwan/blob/master/src/samples/tec...

  • cute_headers

    Collection of cross-platform one-file C/C++ libraries with no dependencies, primarily used for games

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • Klib

    A standalone and lightweight C library

  • Project mention: Factor is faster than Zig | news.ycombinator.com | 2023-11-10

    In my example the table stores the hash codes themselves instead of the keys (because the hash function is invertible)

    Oh, I see, right. If determining the home bucket is trivial, then the back-shifting method is great. The issue is just that it’s not as much of a general-purpose solution as it may initially seem.

    “With a different algorithm (Robin Hood or bidirectional linear probing), the load factor can be kept well over 90% with good performance, as the benchmarks in the same repo demonstrate.”

    I’ve seen the 90% claim made several times in literature on Robin Hood hash tables. In my experience, the claim is a bit exaggerated, although I suppose it depends on what our idea of “good performance” is. See these benchmarks, which again go up to a maximum load factor of 0.95 (Although boost and Absl forcibly grow/rehash at 0.85-0.9):

    https://strong-starlight-4ea0ed.netlify.app/

    Tsl, Martinus, and CC are all Robin Hood tables (https://github.com/Tessil/robin-map, https://github.com/martinus/robin-hood-hashing, and https://github.com/JacksonAllan/CC, respectively). Absl and Boost are the well-known SIMD-based hash tables. Khash (https://github.com/attractivechaos/klib/blob/master/khash.h) is, I think, an ordinary open-addressing table using quadratic probing. Fastmap is a new, yet-to-be-published design that is fundamentally similar to bytell (https://www.youtube.com/watch?v=M2fKMP47slQ) but also incorporates some aspects of the aforementioned SIMD maps (it caches a 4-bit fragment of the hash code to avoid most key comparisons).

    As you can see, all the Robin Hood maps spike upwards dramatically as the load factor gets high, becoming as much as 5-6 times slower at 0.95 vs 0.5 in one of the benchmarks (uint64_t key, 256-bit struct value: Total time to erase 1000 existing elements with N elements in map). Only the SIMD maps (with Boost being the better performer) and Fastmap appear mostly immune to load factor in all benchmarks, although the SIMD maps do - I believe - use tombstones for deletion.

    I’ve only read briefly about bi-directional linear probing – never experimented with it.

  • bdwgc

    The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (bdwgc, also known as bdw-gc, boehm-gc, libgc)

  • Collections-C

    A library of generic data structures for the C language.

  • unikraft

    A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.

  • Project mention: Mewz: Unikernel written in Zig for running WASI-compatible WASM applications | news.ycombinator.com | 2024-06-14

    This project operates by first building the webassembly module into an ELF binary and then statically linking this against the Mewz library OS in order to become a unikernel binary.

    It looks still very early days in terms of supporting all libc/syscalls as well as support for different platforms.

    I wonder how this compares in terms of performance to https://unikraft.org which is able to do the same but is a more establish libOS/unikernel project (disclosure I am a maintainer of Unikraft :-)) since this is written in Zig and Unikraft is written in C.

  • sc

    Common libraries and data structures for C.

  • c-ares

    A C library for asynchronous DNS requests

  • Project mention: DNS到底怎么运作的 | dev.to | 2024-05-29
  • sod

    An Embedded Computer Vision & Machine Learning Library (CPU Optimized & IoT Capable)

  • Project mention: Ask HN: Who is hiring? (September 2023) | news.ycombinator.com | 2023-09-01

    PixLab (https://pixlab.io) & FACEIO (https://faceio.net) | Full-or-part-time | Remote | Computer Vision / Full stack Engineers |

    PixLab, a leading provider of Machine Vision, Face Recognition & Media Processing APIs is looking for:

    * Embedded C & Computer Vision engineer(s) to work on the SOD (https://sod.pixlab.io), embedded computer vision library.

    * Senior Python engineer with proficiency in PyTorch to work on FACEIO (https://faceio.net), our facial authentication web framework for web sites & apps.

    * C++ developer with ML expertise to work on the port of Tiny-Dream (https://pixlab.io/tiny-dream), our embedded Stable Diffusion C++ library from ncnn to ggml.

    * React/Vue JS Web developer(s) with expertise in fabric.js to work on a brand new, web based photo editing software backed by generative AI.

    Reach out to Vincent via contact AT pixlab.io with your resume if interested.

  • zlib-ng

    zlib replacement with optimizations for "next generation" systems.

  • Project mention: Show HN: Pzip- blazing fast concurrent zip archiver and extractor | news.ycombinator.com | 2023-09-24

    Please note that allowing for 2% bigger resulting file could mean huge speedup in these circumstances even with the same compression routines, seeing these benchmarks of zlib and zlib-ng for different compression levels:

    https://github.com/zlib-ng/zlib-ng/discussions/871

    IMO the fair comparison of the real speed improvement brought by a new program is only between the almost identical resulting compressed sizes.

  • usbmuxd

    A socket daemon to multiplex connections from and to iOS devices

  • libssh2

    the SSH library

  • librg

    🚀 Making multi-player gamedev simpler since 2017

  • libvncserver

    LibVNCServer/LibVNCClient are cross-platform C libraries that allow you to easily implement VNC server or client functionality in your program.

  • libexpat

    :herb: Fast streaming XML parser written in C99 with >90% test coverage; moved from SourceForge to GitHub

  • Project mention: Expat (XML parser) is understaffed and needs funding | news.ycombinator.com | 2024-04-03

    I would not have found the call for funding help until they pointed out here:

    https://github.com/libexpat/libexpat/blob/R_2_6_2/expat/Chan...

    I don't understand why there isn't a donate button on the README / website to support development of this and instead it's hidden somewhere.

    Maintainers it is perfectly OK to ask the public to donate or ask for sponsorships.

    If xz taught any anything we don't want to be in that situation again.

  • libgphoto2

    The libgphoto2 camera access and control library.

  • lwrb

    Lightweight generic ring buffer manager library

  • TurboPFor

    Fastest Integer Compression

  • Project mention: Show HN: Time Series Benchmark TurboPFor,TurboFloat,TurboFloat LzX,TurboGorilla | news.ycombinator.com | 2023-06-25
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

C Library discussion

Log in or Post with

C Library related posts

Index

What are some of the best open-source Library projects in C? This list will help you:

Project Stars
1 libcurl 34,684
2 webview 12,289
3 FreeRDP 10,448
4 libgit2 9,496
5 libimobiledevice 6,413
6 lwan 5,915
7 cute_headers 4,157
8 Klib 4,064
9 bdwgc 2,844
10 Collections-C 2,753
11 unikraft 2,421
12 sc 2,184
13 c-ares 1,795
14 sod 1,721
15 zlib-ng 1,463
16 usbmuxd 1,405
17 libssh2 1,278
18 librg 1,235
19 libvncserver 1,066
20 libexpat 1,011
21 libgphoto2 982
22 lwrb 808
23 TurboPFor 749

Sponsored
Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com