Ir al contenido
use-cases / onboard-developer-one-link / hero
SNAPSHOTS · COPIA DE CONTENEDOR

Incorpora a un desarrollador con un solo enlace

Toma una snapshot de tu baseline de desarrollo una vez. A partir de ahí, cada nueva incorporación recibe una URL. Hace clic en el portátil que tenga y ya está dentro de un contenedor fresco que es un clon del baseline — codebase, dependencias, variables de entorno, base de datos seed, VSCode en el navegador. Escribiendo código en cinco minutos. No configurando.

use-cases / onboard-developer-one-link / mechanism

Cómo una URL se convierte en un portátil de trabajo

Las snapshots de Hoody capturan un contenedor entero — archivos en disco, cuentas de usuario, archivos de unit de systemd, base de datos seed. Container copy clona esa snapshot en un contenedor fresco por desarrollador. El enlace en el correo es la ruta a ese contenedor fresco.

POST /api/v1/containers/[baseline_id]/copy4 PASOS · UNA LLAMADA API
01

Captura el baseline una vez

POST .../snapshots

Toma una snapshot con nombre de tu contenedor de referencia — llámala dev-baseline. Vuelve a ejecutarlo cuando cambie el baseline.

02

Copia con cada nueva incorporación

POST .../copy [ source_snapshot ]

Una llamada API clona la snapshot en un contenedor fresco bajo el proyecto del nuevo desarrollador.

03

Su URL es el contenedor

alex-laptop.containers.hoody.com

El contenedor llega con una URL pública desde el principio. Pégala en Slack. Hacen clic. Están dentro.

04

Terminal, archivos, navegador

ttyd · webview · ssh

hoody_kit enciende automáticamente los endpoints de terminal, navegador de archivos y VSCode-en-navegador. Nada que instalar en el portátil.

onboard-alex.sh
# 1. Snapshot the baseline (do this once, refresh when you upgrade Node)
curl -X POST "$API/api/v1/containers/$BASE/snapshots" \
  -H "Authorization: Bearer $TOKEN" \
  -d '[ "alias": "dev-baseline" ]'

# 2. Copy the snapshot into a fresh container for the new hire
curl -X POST "$API/api/v1/containers/$BASE/copy" \
  -H "Authorization: Bearer $TOKEN" \
  -d '[
    "target_project_id": "$ACME",
    "name": "alex-laptop",
    "source_snapshot": "dev-baseline",
    "copy_firewall_rules": true,
    "copy_network_rules": true
  ]'

# 3. The response carries the container URL. Email it. That's onboarding.
# => https://alex-laptop.containers.hoody.com

Dos POSTs y una URL. La snapshot del baseline es el contrato; container copy es el constructor; el subdominio resultante es lo que aterriza en el correo de bienvenida. Sin bastión que aprovisionar, sin repo de dotfiles que clonar, sin licencia de Docker Desktop que negociar.

use-cases / onboard-developer-one-link / contrast

De un muro de pasos a una sola frase

El README que solía acompañar a cada repo cargaba también con los modos de fallo. La mitad de las líneas eran parches para el portátil que el nuevo casualmente trajera. La URL es más corta porque el portátil ya no está en la foto — el entorno sí.

README.md · setup47 PASOS
  • 01Instala las Xcode CLI tools
  • 02Instala Homebrew
  • 03brew install node@20 pnpm postgres@15
  • 04Añade líneas PATH a .zshrc
  • 05createdb acme_dev
  • 06Clona el repo de seed-data
  • 07Ejecuta el loader (tarda 25 min)
  • 08Pide en #devops el .env de staging
  • ...39 líneas más que harás mal
TIEMPO MEDIO HASTA EL PRIMER COMMITDOS DÍAS
SE CONVIERTE EN
el correo de bienvenida · v21 LÍNEA

PARA: alex@acme.com · ASUNTO: BIENVENIDA

Bienvenido al equipo. Abre esto cuando estés listo para escribir código:

https://alex-laptop.containers.hoody.com

— infra@acme

TIEMPO HASTA EL PRIMER COMMITCINCO MINUTOS
use-cases / onboard-developer-one-link / dayone
DÍA UNO · EL LUNES DE ALEX

El README que solía tener 47 pasos ahora es una línea: abre esta URL.

08:59 — portátil abierto, enlace en el portapapeles09:04 — primer commit empujado
Primer commit, cronometradoCINCO MINUTOS · CERO INSTALACIONES
0108:59La URL aterriza en la bandejasin configurar el portátil
0209:00Abre la URL — ya está dentroel contenedor es el workspace
0309:04Primer commit empujadoescribiendo código, no configurando
ARCHIVOSCodebase ya clonado, rama en main
DEPSNode, pnpm, Postgres, Redis preinstalados
DATOSBase de datos seed cargada, .env de staging inyectado
use-cases / onboard-developer-one-link / replaces

Qué reemplaza esto

Cada uno intenta llevar un entorno funcional al portátil del nuevo desarrollador. Cada uno cuesta setup, licencia o pegamento DIY. Una URL de snapshot no cuesta nada de eso — el entorno ya está corriendo.

  • GitHub CodespacesCobro por asiento, devcontainer.json que mantener
  • GitpodPrecio por workspace, .gitpod.yml que depurar
  • DaytonaPlano de control autohospedado que correr
  • CoderPlantillas e infraestructura de provisioner que cuidar
  • Setup de devcontainerLicencia de Docker Desktop + baile de VSCode por portátil
  • Desarrollo localDos días de brew, paths, peticiones de .env en #devops
  • Documentos de onboarding47 pasos que se desfasan en cuanto alguien actualiza el baseline
use-cases / onboard-developer-one-link / cta

Deja de enviar pasos de setup en README. Envía una URL.

use-cases / onboard-developer-one-link / related

Lee los otros