Skip to content

Deployment Overview

tripplan.ing supports two production deployment targets. Choose based on your infrastructure preferences.

Deployment options

Cloudflare WorkersDocker / Node.js
DatabaseD1 (SQLite at the edge)SQLite file (better-sqlite3)
SessionsCloudflare KVIn-memory (lost on restart)
File storageR2 (S3-compatible)Local filesystem
ScalingAuto-scales globallySingle container
CostFree tier available, pay-per-requestSelf-hosted infrastructure
CI/CDGitHub Actions → Wrangler deployDocker build and push
Best forProduction with global reachSelf-hosted or air-gapped environments

The primary deployment target. A single Worker serves all events and the platform UI:

  • D1 — SQLite database at the edge
  • KV — Key-value store for sessions and OTPs
  • R2 — Object storage for photos and documents
  • Workers — Serverless compute

Setup: Cloudflare Workers

Docker / Node.js

For self-hosted deployments or environments without Cloudflare access:

  • SQLite — Local database file
  • In-memory KV — Sessions lost on container restart
  • Filesystem — Photos and documents stored on disk

Setup: Docker

Deployment workflow

Regardless of runtime, the deployment flow is:

  1. Configure environmentEnvironment & Secrets
  2. Set up CI/CDCI/CD Pipeline
  3. Deploy — Push to main triggers automated deployment
  4. Create eventsCreating Events via the platform UI

Section overview

PageWhat you'll learn
Cloudflare WorkersD1/KV/R2 setup, wrangler config, go-live checklist
Environment & SecretsAll required env vars, GitHub Environments, secret management
CI/CD PipelineGitHub Actions workflows, deployment stages, rollback
DockerDocker build, container configuration, data persistence
Creating EventsPlatform UI walkthrough, domain setup, DNS configuration
Mailgun (Email)Mailgun account, domain verification, API key setup
Stripe (Payments)Stripe account, API keys, webhook endpoint, test vs live
PayPal (Payments)PayPal developer app, credentials, webhooks, sandbox mode

Released under the MIT License.