[ Features ]
Kinetics runs
all your backends
A Rust-first execution platform designed for deterministic backend workloads, local development, and infrastructure-free deployment.
Unified Workloads
Deploy REST APIs, queue workers, and cron jobs with automatic infrastructure provisioning.
cloud
Local Rust Execution
Just annotate your functions — run and test everything locally, with databases and queues served offline.
Managed SQL
Every project comes with a provisioned SQL database. Connection strings and migrations are handled automatically on local and cloud execution.
Built-in Logs
Access per-function logs directly from the CLI.
Secrets
Secrets are automatically provisioned from .env.secrets and injected at runtime.
Environment Config
Define environment variables in code and deploy updates independently from function code.
[ How to start ]
Tap, tap, deploy!
Install kinetics with cargo and deploy your first app in a few seconds.
❯
[ Examples ]
Kinetics
in examples
All examples are available in our GitHub repository here. Install kinetics, and run kinetics deploy. Or simply call them locally with kinetics invoke.
Add tabs with these examples there.
use ; use http::{Request, Response};
use kinetics::tools::config::Config as KineticsConfig;
use kinetics::{macros::endpoint, tools::http::Body};
use serde_json::json;
use std::collections::HashMap;
// As an example use a general-purpose type-erased error from tower.
// Custom errors would work as well.
use tower::BoxError;
/// REST API endpoint which responds with JSON {"success": true}
///
/// Test locally with the following command:
/// kinetics invoke BasicEndpointEndpoint
#[endpoint(url_path = "/endpoint")]
pub async fn endpoint(
_event: Request<Body>,
_secrets: &HashMap<String, String>,
_config: &KineticsConfig,
) -> Result<Response<String>, BoxError> {
let resp = Response::builder()
.status(200)
.header("content-type", "application/json")
.body(json!({"success": true}).to_string())?;
Ok(resp)
}