Tangent Stream processing without DSLs. Shareable, sandboxed, fast. Documentation • Discord • Issues What is Tangent? Tangent is a stream‑processing toolkit that treats plugins (user‑defined functions) as first‑class citizens – exceptionally easy to write and share. Perfect for vibe-coding those pesky log transformations. Plugins run in a lightweight WASM sandbox with near-native speed and full language flexibility — no DSLs, no vendor-locked runtimes. Plugins are designed to be shareable, so common transformations (e.g. GuardDuty findings → OCSF) can be written once and shared with the community. Tangent ships with everything you need to develop, test, and benchmark your own transforms: tangent plugin scaffold – generate plugin boilerplate – generate plugin boilerplate tangent plugin compile – compile plugins to WASM – compile plugins to WASM tangent plugin test – run plugin tests – run plugin tests tangent bench – measure throughput and latency before deploying – measure throughput and latency before deploying tangent run – start the Tangent runtime Why use Tangent? Use real languages, not DSLs – Real code > DSL. Reviewable, testable, LLM‑friendly. Catch breakage before prod — tangent plugin test for correctness; tangent bench for throughput/latency. Shareable and secure – Data transformations are easy to write and share. Publish and discover open-source plugins in the Tangent Plugins library. Each plugin runs in its own lightweight sandbox. Benchmarks Benchmarks show end-to-end throughput with simple log transformation plugins implemented in Rust, Go, and Python. Each plugin is compiled to WASM and run inside Tangent. Source → Sink Rust Go Python tcp → blackhole 483.35 MB/s 399.54 MB/s 76.91 MB/s Benchmarks are run nightly on a dedicated 16-core AMD runner. See nightly benchmarks. Install # Homebrew brew tap telophasehq/telophase brew install tangent-cli tangent --version # with install script curl --proto ' =https ' --tlsv1.2 -LsSf https://github.com/telophasehq...
First seen: 2025-11-20 18:05
Last seen: 2025-11-20 18:05