The codebase that powers boop.cat boop.cat
JavaScript 42.0%
Go 41.3%
CSS 16.0%
HTML 0.4%
Dockerfile 0.3%
Other 0.1%
7 1 0

Clone this repository

https://tangled.org/scanash.com/boop.cat
git@tangled.org:scanash.com/boop.cat

For self-hosted knots, clone URLs may differ based on your setup.

README.md

boop.cat codebase#

This is boop.cat's codebase, and it was released under the Apache License 2.0.

Features#

  • Instant Deployment: Connect any public or private Git repository.
  • Auto-Deploy: Automatically triggers a new build on every push to your main branch. (for GitHub only, use API for other platforms)
  • Edge Delivery: Powered by Cloudflare Workers for global caching and low latency.
  • Managed SSL: Automatic HTTPS for every site and custom domain.
  • Environment Variables: Full support for build-time environment variables.
  • Clean API: Manage your sites and deployments programmatically.

Tech Stack#

  • Backend: Go (chi router, SQLite)
  • Frontend: React (Vite, Lucide Icons)
  • Storage: Backblaze B2 (Object storage)
  • Delivery: Cloudflare Workers (Edge Computing) & KV (Metadata)
  • Database: SQLite (Local file-based database)

Getting Started#

1. Prerequisites#

2. Installation#

# Clone the repository
git clone https://tangled.org/scanash.com/boombox
cd boombox

# Install frontend dependencies
npm install

3. Configuration#

Copy the example environment file and fill in your credentials:

cp .env.example .env

Key variables to configure:

  • SESSION_SECRET: Random string for sessions.
  • FSD_DATA_DIR: Path where the SQLite database will be stored.
  • CF_*: Your Cloudflare API credentials.
  • B2_*: Your Backblaze B2 storage credentials.

4. Running Locally#

Start the Go Backend:

cd backend-go
go run main.go

The backend serves the frontend from client/dist. For development, you can run the Vite dev server separately:

Start Vite Dev Server:

cd client
npm run dev

Docker Deployment#

The project includes a multi-stage Dockerfile that builds both the React frontend and Go backend into a single production-ready image.

docker build -t boop-cat .
docker run -p 8788:8788 --env-file .env boop-cat

API Documentation#

The platform provides a REST API for managing sites. See the API Documentation page within the dashboard for details and examples.

License#

This project is licensed under the Apache License 2.0. See LICENSE for details.