felixguendling/cista
Cista is a simple, high-performance, zero-copy C++ serialization & reflection library. observed · 2026-08-28
Health v2 · maintenance only
69/100
- Activity 97
- Release rhythm 14
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 2838
- days_rel: 361
- days_push: 18
- n_releases_24m: 1
Adoption not part of the score
2244 stars · 159 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Cista is a single-header, dependency-free C++17 library for high-performance serialization and reflection of native C++ data structures, with zero-copy deserialization and support for cyclic and recursive structures. It includes serializable SwissTable-based hash map/set containers, automatic hash/equality derivation, optional recursive type-hash versioning, integrity checksums, and direct-to-filesystem serialization.
Use cases
- serialize C++ structs to a binary format
- zero-copy deserialization of native C++ data structures
- fast serialization library for C++17 with no macros
- save and load complex or cyclic C++ objects to files
- serialize hash maps directly to a memory-mapped file
- version and checksum binary-serialized data structures
- C++ reflection without source code generation
When to choose
- You want raw performance and to serialize your existing native structs without boilerplate, macros, or code generation
- You need a single-header, zero-dependency serialization solution in C++
- You must serialize complex graphs with cyclic references or recursive data structures
- You want to serialize directly to disk or memory-mapped files to save memory
- You need built-in data structure versioning and corruption checks via checksums
When to avoid
- You need cross-language or cross-platform interoperability with standardized formats like JSON, Protobuf, or FlatBuffers
- You require human-readable output or schema evolution across different languages
- Your project is not C++ or is below C++17
- You need broad tooling/ecosystem support (browsers, codegen plugins) around the serialized format
Facets
library · maturity active
serialization developer-tools performance cpp cross-platform windows cpp17 header-only zero-copy reflection single-header hash-map mmap high-performance no-macros libfuzzer linux macos
2 sources
- readme: https://github.com/felixguendling/cista · fetched 2026-08-28 · 6862c443e3c0
- homepage: https://cista.rocks · fetched 2026-08-29 · 8119f1ae4ccd
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| felixguendling/cista | main | 69 |
For agents
markdown · JSON · MCP: product_card(name="felixguendling/cista")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem