Plugins SDKs
Plugins SDKs
To facilitate the development of plugins, The Falco Project provides SDKs for multiple programming languages: Go, C++, and Rust. These SDKs provide flexibility for developers to choose the programming language they are most comfortable with while ensuring a consistent and streamlined experience when building Falco plugins.
C++ SDK
The C++ SDK provides abstract base classes for plugin development. Plugin authors can derive from these base classes and implement abstract methods to:
- Supply plugin metadata and capabilities.
- Provide events.
- Extract fields from events.
Go SDK
We offer a Go SDK that simplifies plugin development by providing support code and abstractions. This SDK includes:
- Go structs and enums corresponding to the C structs and enums used by the plugin API.
- Utility packages to handle memory management and type conversions.
- Abstract interfaces that provide a streamlined and user-friendly way to implement plugins.
For a detailed explanation of the architecture and usage of the Go SDK, refer to the Go SDK walkthrough section.
Rust SDK
We recently introduced a Rust SDK, enabling developers to write plugins in Rust. The Rust SDK offers a safe, idiomatic interface for interacting with the Falco plugin API while leveraging Rust’s strong type system and memory safety guarantees.
Was this page helpful?
Let us know! You feedback will help us to improve the content and to stay in touch with our users.
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.