https://github.com/gotempsh/temps
Self host your own Vercel
https://github.com/gotempsh/temps
analytics ci-cd cloud deployment-platform devops docker error-tracking monitoring open-source paas pingora rust self-hosted self-hosting session-replay
Last synced: 17 days ago
JSON representation
Self host your own Vercel
- Host: GitHub
- URL: https://github.com/gotempsh/temps
- Owner: gotempsh
- License: apache-2.0
- Created: 2025-10-21T10:30:44.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-03-08T15:15:29.000Z (18 days ago)
- Last Synced: 2026-03-08T19:17:19.192Z (18 days ago)
- Topics: analytics, ci-cd, cloud, deployment-platform, devops, docker, error-tracking, monitoring, open-source, paas, pingora, rust, self-hosted, self-hosting, session-replay
- Language: Rust
- Homepage: https://temps.sh/docs
- Size: 85.5 MB
- Stars: 232
- Watchers: 4
- Forks: 9
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Security: SECURITY.md
- Notice: NOTICE
Awesome Lists containing this project
- awesome-rust - temps - A self-hosted PaaS that replaces Vercel, analytics, error tracking, and uptime monitoring with a single Rust binary (Applications)
- awesome-rust-with-stars - temps - hosted PaaS that replaces Vercel, analytics, error tracking, and uptime monitoring with a single Rust binary | 2026-03-04 | (Applications)
README

### The open-source, self-hosted deployment platform.
### Deploy, observe, and scale -- from a single binary.
[](LICENSE)
[](https://github.com/gotempsh/temps/releases)
[](https://www.rust-lang.org/)
[](https://github.com/gotempsh/temps)
[Website](https://temps.sh) | [Documentation](https://temps.sh/docs) | [Quick Start](https://temps.sh/docs/introduction) | [GitHub](https://github.com/gotempsh/temps)
---
From bare server to fully deployed — in under 3 minutes (166s).
```bash
curl -fsSL https://temps.sh/deploy.sh | bash
```

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.

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

**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.

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

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

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

**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
Any language, any framework. Auto-detected or bring your own Dockerfile.
---
## Quick Start
```bash
curl -fsSL https://temps.sh/deploy.sh | bash
```
**Tested on:** Ubuntu 24.04 / 22.04 | Also works on macOS
---
## What Temps replaces
| What you get | Instead of paying for |
|---|---|
| Git deployments + preview URLs | Vercel / Netlify / Railway ($20+/mo) |
| Web analytics + funnels | PostHog / Plausible ($0-450/mo) |
| Session replay | PostHog / FullStory ($0-2000/mo) |
| Error tracking | Sentry ($26+/mo) |
| Uptime monitoring | Better Uptime / Pingdom ($20+/mo) |
| Managed Postgres/Redis/S3 | AWS RDS / ElastiCache ($50+/mo) |
| Transactional email + DKIM | Resend / SendGrid ($20-100/mo) |
| Request logs + proxy | Cloudflare ($0-200/mo) |
| **Total with Temps** | **$0 (self-hosted)** |
---
## Temps vs. Alternatives
| Feature | Temps | Coolify | Dokploy | CapRover | Dokku | Railway | Vercel |
|---|:---:|:---:|:---:|:---:|:---:|:---:|:---:|
| Self-hosted | Yes | Yes | Yes | Yes | Yes | No | No |
| Single binary install | Yes | No | No | No | No | -- | -- |
| Git push deploy | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Multi-node / clustering | No | Yes | Yes | Yes | No | Yes | Yes |
| Web analytics | Yes | No | No | No | No | Yes | Yes |
| Session replay | Yes | No | No | No | No | No | No |
| Error tracking (Sentry-compatible) | Yes | No | No | No | No | No | No |
| Uptime monitoring | Yes | No | No | No | No | No | No |
| Transactional email + DKIM | Yes | No | No | No | No | No | No |
| Managed Postgres/Redis/S3 | Yes | Yes | Yes | Partial | Plugin | Yes | Add-on |
| Pingora proxy (Cloudflare-grade) | Yes | No | No | No | No | No | No |
| Auto TLS (HTTP-01 + DNS-01) | Yes | Yes | Yes | Yes | Plugin | Yes | Yes |
| Request-level logging | Yes | No | No | No | No | Partial | Partial |
| Preview deployments | Yes | Yes | Yes | No | No | Yes | Yes |
| Built with Rust | Yes | No | No | No | No | No | No |
| Free & open source | Yes | Yes | Yes | Yes | Yes | No | No |
---
## 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
| Package | Description |
|---|---|
| [`@temps-sdk/node-sdk`](https://www.npmjs.com/package/@temps-sdk/node-sdk) | Platform API client + Sentry-compatible error tracking |
| [`@temps-sdk/react-analytics`](https://www.npmjs.com/package/@temps-sdk/react-analytics) | React analytics, session replay, Web Vitals, engagement tracking |
| [`@temps-sdk/kv`](https://www.npmjs.com/package/@temps-sdk/kv) | Serverless key-value store |
| [`@temps-sdk/blob`](https://www.npmjs.com/package/@temps-sdk/blob) | File storage (S3-compatible) |
| [`@temps-sdk/cli`](https://www.npmjs.com/package/@temps-sdk/cli) | Command-line interface |
| [`@temps-sdk/mcp`](https://www.npmjs.com/package/@temps-sdk/mcp) | Model Context Protocol server for AI agents |
Quick examples
**Analytics** -- wrap your React app, everything else is automatic:
```tsx
import { TempsAnalyticsProvider } from '@temps-sdk/react-analytics';
export default function App({ children }) {
return {children};
}
```
**Error tracking** -- Sentry-compatible, drop-in replacement:
```typescript
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:
```typescript
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:
```typescript
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](CONTRIBUTING.md) for guidelines.
```bash
git clone https://github.com/gotempsh/temps.git
cd temps
cargo build --release
```
---
## License
Dual-licensed under [MIT](LICENSE-MIT) or [Apache 2.0](LICENSE).
---
[temps.sh](https://temps.sh) | [Documentation](https://temps.sh/docs) | [GitHub](https://github.com/gotempsh/temps)