Getting Started with Temps
Temps is a lightweight, single-binary alternative to Vercel that runs on your own infrastructure. It provides automated deployments, preview environments, and SSL certificate management - all while keeping your data and deployments under your control.
Installation
Download and install Temps using one of these methods:
# macOS (Intel)
curl -L https://pub-0dca39cd4682416dbce4fb88086d4a85.r2.dev/temps/temps-x86_64-apple-darwin/temps -o temps
chmod +x temps
sudo mv temps /usr/local/bin/temps
# macOS (Apple Silicon)
curl -L https://pub-0dca39cd4682416dbce4fb88086d4a85.r2.dev/temps/temps-aarch64-apple-darwin/temps -o temps
chmod +x temps
sudo mv temps /usr/local/bin/temps
# Linux (x86_64)
curl -L https://pub-0dca39cd4682416dbce4fb88086d4a85.r2.dev/temps/temps-x86_64-unknown-linux-gnu/temps -o temps
chmod +x temps
sudo mv temps /usr/local/bin/temps
# Windows (x86_64)
curl -L https://pub-0dca39cd4682416dbce4fb88086d4a85.r2.dev/temps/temps-x86_64-pc-windows-msvc/temps.exe -o temps.exe
sudo mv temps.exe /usr/local/bin/temps.exe
Verify the installation by running:
temps --version
If the command is not found, ensure /usr/local/bin
is in your PATH:
echo $PATH | grep "/usr/local/bin"
If needed, add it to your path:
# For bash
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
# For zsh
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
Key Features
- Self-hosted: Run on your own servers or local machine
- Preview Environments: Automatic deployments for pull requests
- Zero Configuration: Smart defaults for popular frameworks
- SSL Management: Automatic SSL certificates via Let's Encrypt
- GitHub Integration: Native GitHub App for repository access
- Custom Domains: Support for custom domains and wildcards
Initial Setup
- Run the bootstrap command to configure Temps:
temps bootstrap
During the bootstrap process, you'll need to provide:
-
Domain Configuration:
- A domain or subdomain for your deployments (e.g.,
*.temps.sh
) - DNS provider details (Cloudflare recommended)
- Cloudflare API key (if using Cloudflare)
- A domain or subdomain for your deployments (e.g.,
-
Email Address:
- For Let's Encrypt SSL certificates
- For important system notifications
-
Access Method:
- Public IP (if your machine is internet-accessible)
- Tunnel (recommended for local machines)
-
GitHub Integration:
- The bootstrap will guide you through GitHub App creation
- You'll need to authorize the app for your repositories
Running Temps
Start the Temps server:
temps serve
By default, Temps runs on:
- HTTP:
0.0.0.0:80
- HTTPS:
0.0.0.0:443
- Admin Console:
127.0.0.1:8081
Managing Projects
Create a new project:
temps project create --name=your-project-name
Deploy a project:
temps deploy --project your-project-name --local
List all projects:
temps projects list
System Service
Temps can run as a system service that starts automatically with your system.
Check service status:
# macOS
sudo launchctl list | grep com.temps.server
# Linux
sudo systemctl status temps-server
View logs:
# macOS
tail -f /tmp/temps-server.log
# Linux
sudo journalctl -u temps-server
Access Your Deployments
Once configured, your deployments will be available at:
- Projects:
https://<project-name>.temps.sh
- Admin Console:
https://app.temps.sh/admin
- API:
https://app.temps.sh/api