TVC template
To help with bootstrapping we have put together a template repository, available attkhq/tvc-template.
This repository uses StageX as a build system, has CI workflow to build and test the application, and is a great base to build your own app.
This template uses Rust but the concepts carry over to other languages: the application is a simple webserver listening on configurable port and host.
Supported languages
Turnkey writes all enclave applications in Rust, but TVC isn’t opinionated about languages: as long as your toolchain can statically compile to a binary (ELF), QuorumOS can run it. If you are planning to use dynamic linking or interpreted languages, get in touch ahead of time and we can look at your toolchain’s compatibility.Recommended First Steps
Start with our minimal template and deploy it within your TVC-enabled organization. To do this, follow our TVC quickstart guide. Verify it comes up healthy, and confirm one or more endpoints respond correctly. Once the baseline is confirmed, layer your application logic incrementally.Known platform limitations
| Limitation | Workaround |
|---|---|
| Deployment deletion not implemented | Ask our team on Slack, or simply kick-off another deploy. There can only be one live deployment at a time. Kicking off a new deployment automatically deletes any existing one |
| No metrics or logs in dashboard | Ask our team on Slack |
| No egress connectivity | Pass signed data as input to your API instead of fetching it from within the TEE |
| No custom provisioning | Use static provisioning for now. This feature is coming sometime in May. |
Getting help
Slack is the primary channel for async questions, debugging, and quick turnaround on deployment issues. Don’t hesitate to use it – especially early on. What to ask for:- Code snippet for reading the quorum key and signing within the TEE
- Help interpreting deployment config fields
- Assistance debugging a deployment that isn’t coming up as expected
- Observability you’d want surfaced in the dashboard