readysite

Open-source website platform

main
git clone https://readysite.org/git/readysite.git
README.md

ReadySite

An open-source platform that makes it easy for anyone to build, launch, and manage websites. AI lets you create software — ReadySite gets it live.

Ready, Site, Go!

Features

  • Build - Create websites with templates or from scratch
  • Test - Preview and validate before going live
  • Manage - Dashboard for all your websites in one place
  • Host - Deploy to cloud infrastructure with one click

Quick Start

Installation

go get github.com/readysite/readysite

Basic Example

package main

import (
    "embed"
    "github.com/readysite/readysite/example/controllers"
    "github.com/readysite/readysite/pkg/application"
)

//go:embed views
var views embed.FS

func main() {
    application.Serve(views,
        application.WithController(controllers.Home()),
    )
}

Run

# Development
go run .

# Build and run
go build -o app && ./app

# Deploy to cloud
go run ./cmd/launch --new myapp

Architecture

Five composable layers:

Layer Package Purpose
Database pkg/database Type-safe SQLite CRUD with Collection[E]
Application pkg/application MVC web framework with HTMX/HATEOAS
Frontend pkg/frontend Interactive JavaScript islands
Platform pkg/platform Cloud deployment and management
Assistant pkg/assistant AI provider abstraction (OpenAI, Anthropic)

Project Structure

readysite/
├── pkg/                 # Core packages
│   ├── database/        # Collection[E], Model, engines
│   ├── application/     # App, Controller, views
│   ├── frontend/        # esbuild bundler, HMR
│   └── platform/        # Server, deployment
├── cmd/
│   ├── launch/          # Deploy to servers
│   ├── connect/         # SSH to servers
│   └── publish/         # Build and push Docker images
├── example/             # Minimal example app
├── website/             # AI-native CMS
└── docs/                # Documentation

Documentation

See the docs/ directory for detailed documentation:

Environment Variables

Variable Required Description
PORT No Server port (default: 5000)
ENV No Set to "production" for prod settings
DIGITAL_OCEAN_API_KEY Deploy DigitalOcean API token
DIGITAL_OCEAN_PROJECT Deploy DigitalOcean project UUID

Tech Stack

  • Backend: Go 1.24+
  • Database: SQLite (LibSQL compatible)
  • Frontend: HTMX, DaisyUI 5, Tailwind CSS 4
  • Bundler: esbuild (for interactive islands)

License

MIT