AWS Builder Center

Migré mi app a AWS y no llegó completa

Nunca había usado AWS, y el Bootcamp Creadores de Contenido Tech LATAM 2026 me impulsó a dar el paso con mi propia app de entrenamiento. Este es el camino: de Vercel a Amplify, una revisión de accesibilidad que tronó antes de empezar y dos cosas que Vercel hacía por mí sin que se lo pidiera.

Coordinador académico, Accesibilidad web, Aprendiendo AWS en público, Fan de los tacos
Estas semanas moví mi app de entrenamiento de Vercel a AWS Amplify (por fin mi contenido habla de algo de AWS :D ). El build salió en verde, abrí la URL nueva y ahí estaban mis datos y mi racha de ejercicios. Pensé que todo sería miel sobre hojuelas pero... no.
Si estás pensando mudar tu app de plataforma, al terminar de leer esto vas a saber qué buscar antes de que tus usuarios se encuentren con una pantalla en blanco.
Mi app de entrenamiento fitness tiene un botón que me sugiere el siguiente entrenamiento del día con IA (Claude). Ese botón de sugerencia no le habla directo al LLM: la llave está guardada en un servidor. Podríamos decir que tenemos a un mesero trabajando que sigue instrucciones antes de entregar el mensaje de Claude. Cuando migré le pegunté a mis dos versiones (una en AWS y la otra en Vercel) si el mesero seguía ahí... AWS me contestó que esa dirección no existe (el famoso error 404). Vercel, en cambio, me contestó con un error, lo cual no es tan malo: significa que ahí está pero el pedido que le mandé al mesero estaba vacío.
Dos memes de gatos. Izquierda: error 404, la dirección no existe. Derecha: error 500, el servidor respondió con un error.
O sea que en Vercel mi código corrió, pero AWS ni supo que existía.
La razón es que ese mesero nunca fue parte de mi código. Por lo que entiendo Vercel agarra cualquier carpeta que se llame api y solita la convierte en funciones que corren en su servidor. En automático por así decirlo, sin que se lo pidas. Yo ni enterado. Es como llevarte tu laptop de Latinoamérica a Europa: te vas confiado de que todo marcha bien, pero llegando allá el enchufe no entra.
Y la plataforma que uses (Vercel o Netlify por ejemplo) te regala o hace sola no se muda ni migra contigo. Se queda con quien te lo regaló... ese mesero creado por Vercel se quedó en Vercel.
Y no fue la única vez que me pasó
Después me senté una hora para trabajar en la app y comencé a grabar sin cortes, quería meterle una revisión automática de accesibilidad en local: algo que abre la app en un navegador, la revisa contra las reglas de accesibilidad (WCAG) y me dice si algo está mal.
La corrí y tronó antes de revisar una sola línea de código. La revisión tiene una condición: antes de empezar, espera a ver el nombre de mi app en pantalla. Y no apareció. Abrí la app en mi compu y... página se veía vacía. (minuto 18:45 )
Esa espera fue lo que me salvó. Porque si no la hubiera tenido, la revisión habría corrido en una página vacía y seguramente la habría dado por buena.
Mi app necesita la dirección de mi base de datos para arrancar. Esa dirección vive en un archivo de configuración, y yo tenía dos!: uno con la dirección buena y otro con algo que ni era dirección. ¿Error de novato?... no lo sé pero la dirección que ganaba era la del segundo archivo, quiero creer que lo escribió la herramienta de Vercel cuando me bajé la configuración. Otra vez Vercel haciendo cosas por mí sin que se lo pidiera. (minuto 23:45 )
Terminal: el primer archivo de configuración tiene una dirección de 40 caracteres; el segundo, solo 11.
Lo arreglé, volví a correr, y con la app viva ahora sí salieron los errores de verdad: 15 elementos en modo oscuro y 16 en claro con texto que no se lee bien sobre su fondo. (minuto 30:45 )
Terminal con la revisión fallando: 16 elementos con contraste insuficiente, esperado 4.5 a 1.
Ajusté los colores, uno por modo, sin cambiar mi identidad: el mismo naranja y el mismo morado, apenas un paso más claro en oscuro y un paso más oscuro en claro. Volví a correr y pasó en los dos modos. (minuto 1:06:45 )
Terminal con las tres pruebas aprobadas en modo claro y oscuro, y 6 elementos marcados para revisión manual.
Algo que me dio gusto fue ver que quedaron 6 elementos que la revisión no pudo decidir y me pide revisarlos a mano. Lo cual me deja claro que no todo en accesibilidad se debe de revisar con herramientas automáticas.
¡Lo que aprendí dos veces!
Si vas a mover tu app, no te preocupes por tus archivos, preocúpate por lo que tu plataforma vieja hacía por ti sin que se lo pidieras. Muchas veces te da sorpresas
Lo que sigue: hoy esta revisión corre en mi compu de manera manual, y si se me olvida, no pasa nada. El siguiente paso es meterla al build de AWS Amplify, para que si algo rompe la accesibilidad, la app simplemente no se publique. Nos vemos en la próxima entrega.
Los dos videos, por si quieres ver los tropiezos completos:
🎥 La migración (14 min) 
🎥 La sesión completa de accesibilidad (1 h, sin cortes) 
Por último les dejo una línea del tiempo de lo que tuve de hallazgos en este ejercicio.
Una línea del tiempo que marca los hitos a lo largo del proyecto
#content-creators-latam
Any opinions in this article are those of the individual author and may not reflect the opinions of AWS.
Enjoyed reading this content? Let the author know!

Your likes, comments, shares, and saves help creators reach more builders.

Loading recommendations

Loading article