Vapor API Server

Hace 48 horas no sabía nada de Vapor, hoy tengo mi propia API desplegada en producción, con su base de datos, sirviendo datos a mi app iOS. Y quiero compartir esta experiencia. Decidí mirar hacia abajo y se siente distante, servidor Ubuntu 24.04, SSH, Vapor, concurrencia en Swift 6, pero esa altura es señal de que estás aprendiendo de verdad.

¿Por qué ir más allá? Tras años usando persistencia en local o servicios backend, me pregunté: ¿realmente necesito depender de terceros para todo? Con servicios backend escribes 3 líneas y tienes persistencia. Pero también pierdes control, flexibilidad y conocimiento profundo de tu stack.

Lo más importante: entiendo cada pieza del sistema, desde cómo el servidor recibe una request HTTP hasta cómo se deserializa el JSON en mi app.

App configurada en: Approachable Concurrency: No, Default Actor Isolation: nonisolated, Strict Concurrency Checking: Complete.

El resultado:

✔ API completa en Vapor con Swift 6.

✔ Base de datos SQLite con migraciones.

✔ Desplegada en DigitalOcean.

✔ App iOS consumiendo datos en tiempo real.

✔ Strict Concurrency Checking: Complete.

✔ Arquitectura preparada para escalar: de 5 recetas a miles.

Nivel de dificultad: Medio

Tiempo invertido: 10 horas (incluyendo debugging, deploy y aprendizaje)

¿Vale la pena? Absolutamente. No se trata de reinventar la rueda, sino de entender cómo funciona.

Recursos que me agilizaron la tarea:

Stack: Claude Code, Vapor 4, Swift 6, DigitalOcean Droplet (básico), iTerm, GitHub, DB Browser para SQLite, Ubuntu 24.04