> For the complete documentation index, see [llms.txt](https://docs.coherent.global/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.coherent.global/hybrid-runner/introduction-to-the-hybrid-runner.md).

# Introduction to the hybrid runner

Unlock the power of Spark to seamlessly deploy your logic on-premises, private clouds, or personal devices! Spark includes the groundbreaking capability that leverages WebAssembly ([Wasm](https://webassembly.org/)) technology as a secure sandbox to execute near-native code.

Spark takes Excel spreadsheet logic to new heights by converting it into efficient C++ code, which is then encapsulated into WebAssembly modules. This innovative approach empowers users to package and deploy their Excel-based applications within [Docker](https://docs.docker.com/manuals/) containers.

## Key features

1. **Privacy and security**: Spark ensures the protection of sensitive data, making it an ideal choice for applications handling personally identifiable information (PII). The WebAssembly sandbox provides a secure environment for executing your logic, safeguarding your data at every step.
2. **On-premises scalability**: Take control of your computing resources with on-premises deployment. This option allows you to scale and optimize your infrastructure according to your specific needs.
3. **Low-latency performance**: Experience fast performance with the [Neuron](/build-spark-services/neuron.md) runner and guarantee low-latency results for your applications.
4. **Telemetry tools**: Support for [OpenTelemetry](https://opentelemetry.io/docs/what-is-opentelemetry/) to enable logging of service status and API calls.

## How it works

The Spark team has created a Docker image [`nodegen-server`](https://github.com/orgs/Coherent-Partners/packages/container/package/nodegen-server) (also referred to as the Neuron runner) to create and run containerized applications designed explicitly for executing Wasm modules generated by Spark.

`nodegen-server` acts as a worker and does not handle user authentication or authorization. It does not store any sensitive data during its runtime, including when executing models or retrieving WebAssembly modules. It is the responsibility of the end user to secure the server and implement necessary authentication and authorization mechanisms such as a proxy or API gateway.

Use the [ImpEx APIs](/spark-apis/impex-apis.md) to export Wasm modules from Spark. These modules, along with the `nodegen-server` , can be neatly packaged into Docker containers. This process is designed with continuous integration/continuous delivery ([CI/CD](https://www.redhat.com/en/topics/devops/what-is-ci-cd)) in mind, ensuring a streamlined and automated deployment process.

Always use the latest version of the runner available. If you are not using the latest version of the runner, you can potentially be at risk to vulnerabilities or encounter issues when used in with newer versions of Neuron.
