# Cap'n Proto

Cap'n Proto serialization/RPC system - core tools and C++ library

Repository: https://github.com/capnproto/capnproto
Canonical: https://ross.abutalabs.com/products/capn-proto
Homepage: https://capnproto.org
Language: C++
License: NOASSERTION
License Family: other
Last push: 2026-08-26T21:14:04+00:00
Link (homepage): https://capnproto.org
Link (site_page): https://capnproto.org/install.html
Link (site_page): https://capnproto.org/faq.html

## Health v2 (maintenance only)
Score: 77/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 99, release rhythm 35, longevity 100
- inputs: {"age_days": 4906, "days_push": 7, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 13169, forks 1070 (observed 2026-08-28T04:11:02.416020+00:00)

## What it is
Cap'n Proto is an extremely fast binary data interchange format and capability-based RPC system, designed so data can be read directly from memory without an encoding/decoding step. It includes a schema compiler (capnp) and C++ runtime library, with bindings for other languages such as Go.

## Use cases
- serialize structured data faster than protocol buffers
- build a capability-based RPC system between services
- exchange binary data between processes on the same machine
- store structured messages directly to disk without encoding
- generate code from .capnp schema files
- communicate between mutually distrusting parties with object-capability security

## When to choose
- you need maximum serialization speed with zero encode/decode overhead
- you want a schema-driven binary format with backward compatibility
- you need stateful, object-oriented RPC between heterogeneous components
- you are building high-performance inter-process or datacenter communication

## When to avoid
- you need human-readable data formats like JSON for interoperability
- you need a mature ecosystem with broad language support like Protocol Buffers
- you want stateless request/response load balancing out of the box
- you depend on a stable release branch and should avoid the v2 development branch

## Facets
- artifact type: library
- maturity: stable
- function: serialization, rpc, parser
- domain: developer-tools, microservices, apis, performance
- platform: windows, cpp, cross-platform
- tags: data-interchange-format, schema-compiler, zero-copy, capability-based-rpc, protocol-buffers-alternative, linux, macos

## Member repositories
- capnproto/capnproto (main) score 77
- capnproto/go-capnp (sdk) score 70

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:02.416020+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-29T17:13:28.520441+00:00, confidence not recorded.
  - readme: https://github.com/capnproto/capnproto (fetched 2026-08-28T04:11:02.416020+00:00, sha 5e5b26a01ad4)
  - homepage: https://capnproto.org (fetched 2026-08-29T08:08:50.099062+00:00, sha 09583ab15e3c)
  - site_page: https://capnproto.org/install.html (fetched 2026-08-29T08:08:50.102222+00:00, sha 2157246cfe96)
  - site_page: https://capnproto.org/faq.html (fetched 2026-08-29T08:08:50.104273+00:00, sha 86a6d491a942)
- Data as of 2026-08-30T08:39:29.467469+00:00.
