README.md

February 28, 2026 · View on GitHub

Temps

The open-source, self-hosted deployment platform.

Deploy, observe, and scale -- from a single binary.

License GitHub Release Rust GitHub Stars

Website | Documentation | Quick Start | GitHub


Temps — from bare server to deployed in under 3 minutes
From bare server to fully deployed — in under 3 minutes (166s).

curl -fsSL https://temps.sh/deploy.sh | bash

Temps Dashboard

Stop paying for 6 different SaaS tools. Temps replaces your deployment platform, analytics, error tracking, session replay, uptime monitoring, and transactional email -- all self-hosted, all in one binary.


Features

Git Push to Deploy Push to Git, Temps builds and deploys. Auto-detects frameworks, creates preview URLs, and handles zero-downtime rollouts.

Deployments

Built-in Analytics & Session Replay Web analytics with funnels, visitor tracking, and session replay (rrweb). Sentry-compatible error tracking. No external services.

Analytics

Pingora-Powered Proxy Runs on Cloudflare's Pingora engine. Auto TLS via Let's Encrypt (HTTP-01 & DNS-01), custom domains, and full request logging.

Domains

Managed Services Provision Postgres, Redis, S3 (MinIO), and MongoDB alongside your apps. Temps handles creation, backups, and teardown.

Monitoring

Request Logs & Proxy Visibility Every HTTP request logged with method, path, status, response time, and routing metadata. Filter and search without extra tooling.

Proxy Logs

Monitoring & Alerts Monitors for deploy failures, runtime crashes, certificate expiry, and backup health. Get notified before problems reach users.

Project Overview

Transactional Email Add sender domains with DKIM records through the UI. Send transactional emails via @temps-sdk/node-sdk. No external email service needed.

AI-Ready (MCP Server) Ship with a Model Context Protocol server (@temps-sdk/mcp) so AI agents can deploy, monitor, and manage your infrastructure through natural language.

Works with your stack

Next.js Vite Go Python Rust Java .NET NestJS Docker

Any language, any framework. Auto-detected or bring your own Dockerfile.


Quick Start

curl -fsSL https://temps.sh/deploy.sh | bash

Tested on: Ubuntu 24.04 / 22.04  |  Also works on macOS


What Temps replaces

What you getInstead of paying for
Git deployments + preview URLsVercel / Netlify / Railway ($20+/mo)
Web analytics + funnelsPostHog / Plausible ($0-450/mo)
Session replayPostHog / FullStory ($0-2000/mo)
Error trackingSentry ($26+/mo)
Uptime monitoringBetter Uptime / Pingdom ($20+/mo)
Managed Postgres/Redis/S3AWS RDS / ElastiCache ($50+/mo)
Transactional email + DKIMResend / SendGrid ($20-100/mo)
Request logs + proxyCloudflare ($0-200/mo)
Total with Temps$0 (self-hosted)

Temps vs. Alternatives

FeatureTempsCoolifyDokployCapRoverDokkuRailwayVercel
Self-hostedYesYesYesYesYesNoNo
Single binary installYesNoNoNoNo----
Git push deployYesYesYesYesYesYesYes
Multi-node / clusteringNoYesYesYesNoYesYes
Web analyticsYesNoNoNoNoYesYes
Session replayYesNoNoNoNoNoNo
Error tracking (Sentry-compatible)YesNoNoNoNoNoNo
Uptime monitoringYesNoNoNoNoNoNo
Transactional email + DKIMYesNoNoNoNoNoNo
Managed Postgres/Redis/S3YesYesYesPartialPluginYesAdd-on
Pingora proxy (Cloudflare-grade)YesNoNoNoNoNoNo
Auto TLS (HTTP-01 + DNS-01)YesYesYesYesPluginYesYes
Request-level loggingYesNoNoNoNoPartialPartial
Preview deploymentsYesYesYesNoNoYesYes
Built with RustYesNoNoNoNoNoNo
Free & open sourceYesYesYesYesYesNoNo

Tech Stack

  • Backend: Rust, Axum, Sea-ORM, Pingora (Cloudflare's proxy engine), Bollard (Docker API)
  • Frontend: React 19, TypeScript, Tailwind CSS, shadcn/ui
  • Database: PostgreSQL + TimescaleDB
  • Architecture: 30+ workspace crates, three-layer service architecture

SDKs

PackageDescription
@temps-sdk/node-sdkPlatform API client + Sentry-compatible error tracking
@temps-sdk/react-analyticsReact analytics, session replay, Web Vitals, engagement tracking
@temps-sdk/kvServerless key-value store
@temps-sdk/blobFile storage (S3-compatible)
@temps-sdk/cliCommand-line interface
@temps-sdk/mcpModel Context Protocol server for AI agents
Quick examples

Analytics -- wrap your React app, everything else is automatic:

import { TempsAnalyticsProvider } from '@temps-sdk/react-analytics';

export default function App({ children }) {
  return <TempsAnalyticsProvider>{children}</TempsAnalyticsProvider>;
}

Error tracking -- Sentry-compatible, drop-in replacement:

import { ErrorTracking } from '@temps-sdk/node-sdk';

ErrorTracking.init({ dsn: 'https://key@your-instance.temps.dev/1' });

try {
  riskyOperation();
} catch (error) {
  ErrorTracking.captureException(error);
}

KV store -- Redis-like API, zero config:

import { kv } from '@temps-sdk/kv';

await kv.set('user:123', { name: 'Alice', plan: 'pro' }, { ex: 3600 });
const user = await kv.get('user:123');

Blob storage -- upload and serve files:

import { blob } from '@temps-sdk/blob';

const { url } = await blob.put('avatars/user-123.png', fileBuffer);
const files = await blob.list({ prefix: 'avatars/' });

Contributing

We welcome contributions. See CONTRIBUTING.md for guidelines.

git clone https://github.com/gotempsh/temps.git
cd temps
cargo build --release

License

Dual-licensed under MIT or Apache 2.0.


temps.sh | Documentation | GitHub