blob: e348f481a6afd4911d7b69b8147a51ad32fd7c3f [file] [log] [blame] [edit]
{
"pw_alignment": {
"tagline": "Natural object alignment, guaranteed",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_allocator": {
"tagline": "Flexible, safe, and measurable memory allocation",
"status": "unstable",
"languages": [
"C++17"
],
"size": "400 to 1800 bytes"
},
"pw_analog": {
"tagline": "Analog-to-digital converter libraries and utilities",
"status": "stable",
"languages": [
"C++"
]
},
"pw_android_toolchain": {
"tagline": "GN toolchains for the Android NDK",
"status": "unstable",
"languages": [
"GN"
]
},
"pw_arduino_build": {
"tagline": "Main function wrapper and build utilities for Arduino",
"status": "stable",
"languages": [
"C++",
"GN"
]
},
"pw_assert": {
"tagline": "Flexible crash triggering and handling",
"status": "stable",
"languages": [
"C",
"C++"
]
},
"pw_assert_fuchsia": {
"tagline": "pw_assert backend for Fuchsia",
"status": "experimental",
"languages": [
"C",
"C++"
]
},
"pw_async": {
"tagline": "Portable APIs for asynchronous code",
"status": "deprecated",
"languages": [
"C++"
]
},
"pw_async2": {
"tagline": "Cooperative async tasks for embedded",
"status": "experimental",
"languages": [
"C++17"
]
},
"pw_async_fuchsia": {
"tagline": "Fuchsia backend for pw_async",
"status": "experimental",
"languages": [
"C",
"C++"
]
},
"pw_base64": {
"tagline": "Base64 encoding, decoding, and validating",
"status": "stable",
"languages": [
"C",
"C++",
"Rust"
]
},
"pw_bloat": {
"tagline": "Utilities for generating binary size reports",
"status": "stable",
"languages": [
"C++",
"GN"
]
},
"pw_blob_store": {
"tagline": "Flash-backed persistent storage for data blobs",
"status": "stable",
"languages": [
"C++"
]
},
"pw_bluetooth": {
"tagline": "Host-layer Bluetooth Low Energy APIs and utilities",
"status": "unstable",
"languages": [
"C++"
]
},
"pw_bluetooth_hci": {
"tagline": "Bluetooth Host Controller Interface utilities",
"status": "stable",
"languages": [
"C++"
]
},
"pw_bluetooth_profiles": {
"tagline": "Bluetooth profiles built on top of pw_bluetooth",
"status": "unstable",
"languages": [
"C++"
]
},
"pw_bluetooth_proxy": {
"tagline": "Lightweight proxy for augmenting Bluetooth functionality",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_bluetooth_sapphire": {
"tagline": "Battle-tested Bluetooth with rock-solid reliability",
"status": "unstable",
"size": "500 to 700 kB",
"languages": [
"C++17"
]
},
"pw_boot": {
"tagline": "Simplified booting for C++ targets",
"status": "stable",
"languages": [
"C++"
]
},
"pw_boot_cortex_m": {
"tagline": "ARM Cortex-M backend for pw_boot",
"status": "stable",
"languages": [
"C",
"C++"
]
},
"pw_build": {
"tagline": "Integrations for Bazel, GN, and CMake",
"status": "stable",
"languages": [
"Bazel",
"CMake",
"GN",
"Rust"
]
},
"pw_build_android": {
"tagline": "Utilities for using Pigweed in Android platform",
"status": "unstable",
"languages": [
"C++20"
]
},
"pw_build_info": {
"tagline": "Generate, embed, and parse build-related information",
"status": "stable",
"languages": [
"Bazel",
"CMake",
"GN"
]
},
"pw_build_mcuxpresso": {
"tagline": "Utilities for building NXP MCUXpresso SDK targets",
"status": "stable",
"languages": [
"Bazel",
"GN"
]
},
"pw_bytes": {
"tagline": "Utilities for manipulating binary data",
"status": "stable",
"languages": [
"C++",
"Rust"
]
},
"pw_channel": {
"tagline": "Async, zero-copy API for sending and receiving bytes or datagrams",
"status": "experimental",
"languages": [
"C++"
]
},
"pw_checksum": {
"tagline": "Checksum calculation API",
"status": "stable",
"languages": [
"C",
"C++"
]
},
"pw_chre": {
"tagline": "Android Context Hub Runtime Environment backend",
"status": "experimental",
"languages": [
"C++"
]
},
"pw_chrono": {
"tagline": "Portable std::chrono for constrained embedded devices",
"status": "stable",
"languages": [
"C",
"C++"
]
},
"pw_cli": {
"tagline": "Enhance and accelerate custom command-line tooling",
"status": "stable",
"languages": [
"Python"
]
},
"pw_clock_tree": {
"tagline": "Clock tree management for embedded devices",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_clock_tree_mcuxpresso": {
"tagline": "NXP MCUXpresso SDK implementation for pw_clock_tree",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_console": {
"tagline": "Multi-purpose pluggable interactive console for dev & manufacturing",
"status": "stable",
"size": "N/A (host) but works best with pw_rpc on-device",
"languages": [
"Python"
]
},
"pw_digital_io_linux": {
"tagline": "Digital I/O interface for Linux userspace",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_display": {
"tagline": "Graphic display support and framebuffer management",
"status": "experimental",
"languages": []
},
"pw_dma_mcuxpresso": {
"tagline": "DMA helpers for MCUXpresso SDK",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_docgen": {
"tagline": "Documentation generator for Pigweed-based projects",
"status": "stable",
"languages": [
"GN"
]
},
"pw_elf": {
"tagline": "ELF file support",
"status": "experimental",
"languages": [
"C++17"
]
},
"pw_emu": {
"tagline": "Flexible emulators frontend",
"status": "experimental",
"languages": [
"Python",
"CLI"
]
},
"pw_env_setup_zephyr": {
"tagline": "Zephyr utilities",
"status": "experimental"
},
"pw_format": {
"tagline": "String formatting",
"status": "experimental",
"languages": [
"Rust"
]
},
"pw_function": {
"tagline": "Embedded-friendly std::function",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_fuzzer": {
"tagline": "Better C++ code through easier fuzzing",
"status": "unstable",
"languages": [
"C++17",
"C++20"
]
},
"pw_grpc": {
"tagline": "pw_rpc over gRPC",
"status": "unstable",
"languages": [
"C++17",
"C++20"
]
},
"pw_hdlc": {
"tagline": "Simple, robust, and efficient serial communication",
"status": "stable",
"size": "1400 to 2600 bytes",
"languages": [
"Python",
"C++17",
"TypeScript"
]
},
"pw_hex_dump": {
"tagline": "Handy hexdump utilities",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_i2c": {
"tagline": "Cross-platform I2C API with interactive debugging",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_i2c_linux": {
"tagline": "Linux userspace implementation for pw_i2c",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_i2c_mcuxpresso": {
"tagline": "NXP MCUXpresso SDK implementation for pw_i2c",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_i2c_rp2040": {
"tagline": "Raspberry Pi Pico SDK implementation for pw_i2c",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_ide": {
"tagline": "Code editor and IDE support for Pigweed projects",
"status": "stable",
"languages": [
"C++",
"CLI",
"Python",
"VS Code"
]
},
"pw_json": {
"tagline": "Simple, efficient C++ JSON serialization",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_kvs": {
"tagline": "Lightweight, persistent key-value store",
"status": "stable",
"size": "~12 kB",
"languages": [
"C++17"
]
},
"pw_log": {
"tagline": "Robust and portable logging for embedded projects",
"status": "stable",
"languages": [
"C++",
"Java",
"Python",
"Rust"
]
},
"pw_log_android": {
"tagline": "Android logging backend",
"status": "unstable",
"languages": [
"C++"
]
},
"pw_log_fuchsia": {
"tagline": "Fuchsia logging backend",
"status": "experimental",
"languages": [
"C",
"C++"
]
},
"pw_malloc": {
"tagline": "Replacement interface for standard libc dynamic memory operations",
"status": "stable",
"languages": [
"C",
"C++"
]
},
"pw_multibuf": {
"tagline": "A buffer API optimized for zero-copy messaging",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_numeric": {
"tagline": "Efficient mathematical utilities for embedded",
"status": "stable",
"languages": [
"C++"
]
},
"pw_perf_test": {
"tagline": "Micro-benchmarks that are easy to write and run",
"status": "unstable",
"languages": [
"C++17"
]
},
"pw_preprocessor": {
"tagline": "Helpful preprocessor macros",
"status": "stable",
"languages": [
"C",
"C++"
]
},
"pw_presubmit": {
"tagline": "Python tools for running presubmit checks and linters",
"status": "stable",
"languages": [
"Python"
]
},
"pw_protobuf": {
"tagline": "Expressive interface for encoding and decoding protocol buffers",
"status": "stable",
"languages": [
"C++"
]
},
"pw_random_fuchsia": {
"tagline": "Fuchsia implementation of pw_random",
"status": "experimental",
"languages": []
},
"pw_result": {
"tagline": "Error propagation primitives: value-or-error",
"status": "stable",
"languages": [
"C++17"
]
},
"pw_router": {
"tagline": "Transport-agnostic packet routing",
"status": "experimental",
"languages": [
"C++"
]
},
"pw_rpc": {
"tagline": "Efficient, low-code-size RPC system for embedded devices",
"status": "stable",
"languages": [
"C++",
"Java",
"JavaScript",
"Python",
"TypeScript"
]
},
"pw_sensor": {
"tagline": "A modular way to see the world",
"status": "experimental",
"languages": [
"Python",
"C++17"
]
},
"pw_software_update": {
"tagline": "Secure software delivery",
"status": "experimental",
"languages": [
"Python",
"C++17"
]
},
"pw_span": {
"tagline": "std::span for C++17",
"status": "stable",
"languages": [
"C++17",
"C++20"
]
},
"pw_spi_linux": {
"tagline": "SPI interface for Linux userspace",
"status": "unstable",
"languages": [
"C++17",
"C++20"
]
},
"pw_spi_rp2040": {
"tagline": "Raspberry Pi RP2040 backend for pw_spi",
"status": "unstable",
"languages": [
"C++"
]
},
"pw_status": {
"tagline": "Exception-free error propagation for embedded",
"status": "stable",
"languages": [
"C++17",
"C",
"Python",
"Java",
"TypeScript",
"Rust"
]
},
"pw_stream": {
"tagline": "A foundational interface for streaming data",
"status": "stable",
"languages": [
"C++",
"Rust"
]
},
"pw_string": {
"tagline": "Efficient, easy, and safe string manipulation",
"status": "stable",
"size": "500 to 1500 bytes",
"languages": [
"C++17"
]
},
"pw_target_runner": {
"tagline": "gRPC server for running executables in parallel",
"status": "stable",
"languages": [
"Go"
]
},
"pw_tokenizer": {
"tagline": "Compress strings to shrink logs by +75%",
"status": "stable",
"size": "50% reduction in log size",
"languages": [
"C++",
"C11",
"Python",
"Rust",
"TypeScript",
"Java"
]
},
"pw_toolchain": {
"tagline": "Embedded toolchains for GN-based Pigweed projects",
"status": "stable",
"languages": [
"GN"
]
},
"pw_toolchain_bazel": {
"tagline": "A modular toolkit for declaring C/C++ toolchains in Bazel",
"status": "unstable",
"languages": [
"Starlark"
]
},
"pw_uart": {
"tagline": "Core interfaces for UART communication",
"status": "unstable",
"languages": [
"C++"
]
},
"pw_uart_mcuxpresso": {
"tagline": "NXP MCUXpresso SDK implementation for pw_uart",
"status": "unstable",
"languages": [
"C++"
]
},
"pw_unit_test": {
"tagline": "GoogleTest for embedded",
"status": "stable"
},
"pw_varint": {
"tagline": "Functions for encoding and decoding variable length integers",
"status": "stable",
"languages": [
"C",
"C++",
"Rust"
]
},
"pw_watch": {
"tagline": "Embedded development file system watcher",
"status": "stable"
}
}