# srdja/Collections-C

A library of generic data structures for the C language.

Repository: https://github.com/srdja/Collections-C
Canonical: https://ross.abutalabs.com/products/collections-c
Homepage: http://srdja.github.io/Collections-C
Language: C
License: LGPL-3.0
License Family: copyleft
Topics: data-structures, c, collections, library, algorithms, array, deque, hashtable, list, memory-pool
Last push: 2026-05-12T14:57:43+00:00

## Health v2 (maintenance only)
Score: 69/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 82, release rhythm 35, longevity 100
- inputs: {"age_days": 4399, "days_push": 113, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 3002, forks 333 (observed 2026-08-28T04:07:37.485814+00:00)

## What it is
Collections-C is a generic data structures library for the C language, providing pointer containers (dynamic arrays, linked lists, deques, hash tables, trees, sets, queues, stacks, priority queues, ring buffers) plus sized containers and memory pools. It offers a consistent API with status-code error handling and configurable container parameters.

## Use cases
- generic data structures for C
- hash table implementation in C
- dynamic array and linked list library for C
- memory pool allocator for C programs
- queue stack and priority queue in C
- ordered and unordered set and map containers for C

## When to choose
- you need common containers like lists, hash tables, or deques in a C project without writing them yourself
- you want a lightweight, dependency-free collections library with a consistent API
- you need memory pools to reduce allocation overhead or enable stack-allocated structures

## When to avoid
- you are working in C++ or another language with a standard library of containers
- you need thread-safe or lock-free concurrent data structures
- you require type-safe generics rather than void*-based containers

## Facets
- artifact type: library
- maturity: stable
- function: developer-tools
- domain: developer-tools, programming-languages
- platform: c, cross-platform
- tags: data-structures, collections, containers, hashtable, linked-list, deque, memory-pool, generic-programming, c-library, algorithms

## Member repositories
- srdja/Collections-C (main) score 69

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:37.485814+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:30:34.656865+00:00, confidence not recorded.
  - readme: https://github.com/srdja/Collections-C (fetched 2026-08-28T04:07:37.485814+00:00, sha 331c4c12fe74)
  - homepage: http://srdja.github.io/Collections-C (fetched 2026-08-29T09:45:47.186697+00:00, sha b33937df5c62)
- Data as of 2026-08-30T08:39:29.467469+00:00.
