Self-host ShareOut
import { Steps } from ‘@astrojs/starlight/components’;
Corré ShareOut en tu cuenta de Cloudflare. ShareOut es solo self-hosted — no hay cloud de ShareOut ni checkout. Necesitás una cuenta de Cloudflare y el plan Workers Paid de Cloudflare (Durable Objects); esa facturación es de Cloudflare, no de ShareOut.
Requisitos
Sección titulada «Requisitos»- Cuenta de Cloudflare con Workers Paid (requerido — Durable Objects alimentan tablas, realtime y chat; plan de Cloudflare, no un fee de ShareOut)
- Node 24+ para desarrollo local
- Acceso a GitHub al repo público de ShareOut (el botón Deploy lo clona)
-
CLI (unos cinco minutos) — recomendado:
Ventana de terminal git clone https://github.com/getshareout/shareout.gitcd shareout/shareout-appnpm cinpx wrangler loginnpm run deploy # provisiona D1/R2/KV + SESSION_SECRET + BASE_URL, migra y despliegaO Deploy to Cloudflare desde el README del repo público con Root directory
shareout-appy Deploy commandnpm run deploy(nonpx wrangler deploya secas). -
Abrí la URL del worker. Una DB vacía redirige a
/setup. Creá el primer admin con email y contraseña — sin proveedor de correo ni OAuth. -
Publicá un hello para probar el camino:
Ventana de terminal export SHAREOUT_ORIGIN=https://shareout.<tu-cuenta>.workers.devexport SHAREOUT_TOKEN=so_… # Settings → API tokens después de entrarnpm run smoke:hello -
Probá el data plane (JSON, tablas, datasets):
Ventana de terminal export SHAREOUT_ORIGIN=… SHAREOUT_TOKEN=…npm run smoke:dataGuía: Smoke del data plane.
-
Day 1 — clave de AI si querés Crear con AI / Crew; invitá a alguien; apuntá agentes a
GET $ORIGIN/v1/skillconoriginen~/.shareout/credentials. Ver el README del repo → Day 1.
Pasos opcionales
Sección titulada «Pasos opcionales»| Objetivo | Qué hacer |
|---|---|
| Dominio custom | Adjuntá ruta/dominio en Cloudflare; actualizá SHAREOUT_BASE_URL |
| Google sign-in | GOOGLE_CLIENT_ID + GOOGLE_CLIENT_SECRET; callback {origin}/auth/callback |
| Microsoft sign-in | MICROSOFT_CLIENT_ID + MICROSOFT_CLIENT_SECRET (MICROSOFT_TENANT opcional); callback {origin}/auth/microsoft/callback — setup |
| OTP por email real | Binding EMAIL + vars de from-address |
| Subdominios de workspace | DNS wildcard *.tudominio → worker; apex = host de SHAREOUT_BASE_URL |
| CDN de contenido separado | Seteá ARTIFACT_ORIGIN a una segunda zona (hardening opcional) |
Servir same-zone (sin CDN) es el default y alcanza para la mayoría de self-hosts.
Qué degrada sin bindings de Cloudflare Paid / opcionales
Sección titulada «Qué degrada sin bindings de Cloudflare Paid / opcionales»| Binding | Si falta |
|---|---|
| Durable Objects | Producto incompleto — planificá Workers Paid (Cloudflare) |
EMAIL |
OTP / mails de lifecycle → logs del worker |
AI / VECTORIZE |
Búsqueda semántica → keyword |
BROWSER |
Sin thumbnails / browser smoke |
| Queues | Analytics puede atrasarse o caer a sync |
Detalle: Arquitectura · Ops.
