Skip to content

usewren/sandbox

Repository files navigation

WREN Server

The core server for WREN — versioned JSON storage and static site deployment.

This is the main application: a Bun/TypeScript HTTP server that provides the REST API, serves the Admin UI, marketing site, and handles authentication. It's the single process inside the reusr1/wren Docker image.

What's in here

  • REST API for documents, versions, labels, trees, schemas, binary assets, permissions
  • Binary asset serving with content negotiation (JSON or raw bytes based on Accept header)
  • Label-aware tree paths (?label=published for preview/promote workflows)
  • Multi-tenant Postgres isolation (one schema per org)
  • Better Auth integration (email/password, session cookies, API keys)
  • Marketing site, tutorials, /projects directory, /docs (Scalar), llms.txt

Quick start

# With Docker (recommended)
docker compose up -d
# Server at http://localhost:4000

# Without Docker (needs Bun + Postgres)
bun install
DATABASE_URL=postgres://... bun run index.ts

Docker image

docker pull reusr1/wren:latest
# or: reusr1/wren:0.4.2
# Platforms: linux/amd64, linux/arm64

Related repos

All repos live under github.com/usewren:

Repo Description
sandbox Server (this repo)
cli CLI tool (@usewren/cli on npm)
adminui2 Admin UI (vanilla JS)
marketing Landing pages, tutorials, llms.txt
docs OpenAPI 3.1 spec
db Postgres migrations
auth Better Auth configuration
client-ts TypeScript client library
client-py Python client library

Links

License

Apache-2.0

About

Core server — Bun/TypeScript REST API, Docker image, Admin UI, marketing site

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors