Start building

Start with one interface.
Choose the next boundary.

Evaluate the contract, generated artifacts and runtime locally before introducing a network or protected execution environment.

A practical evaluation path.

  1. Define a small application contract

    Choose one operation from your own application. Describe its types and interface in CIDL, the canonical language-neutral IDL, keeping transport and deployment decisions out of the business contract.

  2. Generate and build locally

    Follow the current repository’s CMake instructions. Inspect the generated C++ interface, proxy/stub code and schema artifacts. Start with the simplest composition you can debug.

  3. Connect an independent client

    Use a generated browser path or a supported standards adapter. Check the published schema, access rules and positive and negative cases from outside your application.

  4. Move a component boundary

    Evaluate a process or network composition while retaining the interface. Exercise failure handling, callbacks, object lifetime and performance under the new conditions.

  5. Evaluate protected execution

    For a supported SGX profile, identify host dependencies and the code/data boundary. Configure evidence appraisal and session policy, then check an accepted workload and a deliberately rejected case.

Use a small demo to understand the mechanism.

The browser calculator shows a generated call reaching a C++ implementation. The telemetry reports show how runtime relationships evolve. Cerberus demonstrates how those foundations fit a larger application.

What to assess before going further.

Contract fit

Can the types, callbacks and ownership model express your application clearly? Check generated output and versioning behaviour.

Integration fit

Do the supported bindings match the systems you need to connect? Review data semantics, authentication and interface artifacts together.

Execution fit

Choose the blocking or coroutine path and test the actual deployment boundary. Not every component is available in every build profile.

Trust fit

Define who approves code, what evidence is accepted, how keys are provisioned and what updates or failures should do.

C++ is the first implementation language. Generated JavaScript clients are available for supported paths, and further language implementations are planned. Assess the current language and runtime support against your deployment requirements. Development simulation is useful for integration, but is not hardware-security evidence.