Key Technologies
DeploySolo leverages a stack of modern, efficient tools to streamline SaaS app development. Here’s a breakdown of the core technologies and why they matter for your project.
Backend: Go and PocketBase
- Go: The primary language for DeploySolo. It’s fast, concurrent, and compiles to a single binary, making deployment simple. All custom logic, handlers, and packages are written in Go.
- PocketBase: An open-source backend in a single executable. It provides a SQLite database, real-time subscriptions, authentication (email/password, OAuth), file storage, and auto-generated REST/JS APIs. DeploySolo extends it with packages for SaaS-specific needs.
Frontend: htmx and HTML Templates
- htmx: Enables dynamic, interactive UIs without heavy JavaScript. Add attributes like
hx-getorhx-postto HTML elements for AJAX requests, swaps, and updates. Keeps your app server-rendered and lightweight—ideal for reactive experiences like forms or live updates. - Go HTML Templates: Use built-in templating for rendering pages and partials. DeploySolo’s render package handles loading and htmx-compatible responses.
Styling and UI: WebAwesome
- WebAwesome: A lightweight CSS framework for responsive, modern components (buttons, inputs, icons). It integrates Font Awesome and supports dark mode.
Integrations
- Stripe: For payments and subscriptions via the payment package. Handles webhooks, customer portals, and billing logic.
- GitHub API: The github package enables user invites to repositories, useful for team-based SaaS features.
- Caddy: Web server for production. Automates HTTPS with Let’s Encrypt and serves static files efficiently.
Deployment: AWS EC2 and Linux
- Targets Ubuntu on EC2 for guides, but compatible with any Linux host. Use systemd for running the Go binary as a service.
This stack minimizes dependencies while maximizing productivity. For hands-on setup, check Quick Start. Dive into usage in Core Packages.