diff --git a/README.md b/README.md
index 5a9d1b1..ff3a5db 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,45 @@
-# Zooid
+
+
+
-This is a multi-tenant relay based on [Khatru](https://gitworkshop.dev/fiatjaf.com/nostrlib/tree/master/khatru) which implements a range of access controls. It's designed to be used with [Flotilla](https://flotilla.social) as a community relay (complete with NIP 29 support), but it can also be used outside of a community context.
+
+ A multi-tenant Nostr relay for communities.
+
+
+
+ Quick start ·
+ Configuration ·
+ API
+
+
+
+
+
+
+---
+
+Zooid is a multi-tenant relay built on [Khatru](https://gitworkshop.dev/fiatjaf.com/nostrlib/tree/master/khatru) with a flexible set of access controls. It's designed to pair with [Flotilla](https://flotilla.social) as a community relay (with full NIP 29 support), but it works just fine outside of a community context too.
+
+## Features
+
+- **Multi-tenant** — run any number of virtual relays from a single instance, each with its own host, schema, and policy.
+- **Community-ready** — first-class support for [NIP 29](https://github.com/nostr-protocol/nips/blob/master/29.md) groups, invite codes, and role-based access.
+- **Batteries included** — optional [Blossom](https://github.com/hzrd149/blossom) media, [NIP 86](https://github.com/nostr-protocol/nips/blob/master/86.md) management, [NIP 9a](https://github.com/nostr-protocol/nips/pull/1079) push, and [LiveKit](https://livekit.io/) audio/video calls.
+- **Remotely manageable** — JSON REST API authenticated via [NIP 98](https://github.com/nostr-protocol/nips/blob/master/98.md).
+- **Operationally simple** — single binary, SQLite storage, OCI container, optional pprof.
+
+## Quick start
+
+```sh
+docker run -it \
+ -p 3334:3334 \
+ -v ./config:/app/config \
+ -v ./media:/app/media \
+ -v ./data:/app/data \
+ ghcr.io/coracle-social/zooid
+```
+
+Drop a TOML config file into `./config/` (see [Configuration](#configuration)) and the relay will be available at `ws://:3334`.
## Architecture
@@ -13,7 +52,7 @@ Zooid supports a few environment variables, which configure shared resources lik
- `PORT` - the port the server will listen on for all requests. Defaults to `3334`.
- `CONFIG` - where to store relay configuration files. Defaults to `./config`.
- `MEDIA` - where to store blossom media files. Defaults to `./media`.
-- `DATA` - where to store databse files. Defaults to `./data`.
+- `DATA` - where to store database files. Defaults to `./data`.
- `API_HOST` - the hostname on which to expose the management API. If not set, the API is disabled.
- `API_WHITELIST` - a comma-separated list of nostr hex pubkeys authorized to use the management API. Required when `API_HOST` is set.
- `PPROF_ADDR` - an http host to serve pprof stats on.
@@ -151,15 +190,6 @@ After running `just build`, a number of scripts will be available:
See `justfile` for defined commands.
-## Deploying
+## License
-Zooid can be run using an OCI container:
-
-```sh
-docker run -it \
- -p 3334:3334 \
- -v ./config:/app/config \
- -v ./media:/app/media \
- -v ./data:/app/data \
- ghcr.io/coracle-social/zooid
-```
+[MIT](./LICENSE)
diff --git a/render.yaml b/render.yaml
new file mode 100644
index 0000000..d96a576
--- /dev/null
+++ b/render.yaml
@@ -0,0 +1,21 @@
+services:
+ - type: web
+ name: zooid
+ runtime: image
+ image:
+ url: ghcr.io/coracle-social/zooid
+ plan: starter
+ region: oregon
+ envVars:
+ - key: PORT
+ value: "3334"
+ - key: CONFIG
+ value: /app/config
+ - key: DATA
+ value: /app/data
+ - key: MEDIA
+ value: /app/media
+ disk:
+ name: zooid-data
+ mountPath: /app
+ sizeGB: 10
diff --git a/zooid-logomark.jpeg b/zooid-logomark.jpeg
new file mode 100644
index 0000000..f8b4231
Binary files /dev/null and b/zooid-logomark.jpeg differ
diff --git a/zooid-wordmark.jpeg b/zooid-wordmark.jpeg
new file mode 100644
index 0000000..c8602da
Binary files /dev/null and b/zooid-wordmark.jpeg differ