Artículos sobre: Websites & APIs
Este artículo también está disponible en:

Cómo alojar una aplicación SolidJS

Cómo alojar aplicaciones SolidJS en Square Cloud


Alojar SolidJS en Square Cloud es simple y extremadamente eficiente. Dependiendo de la arquitectura de tu proyecto, seguirás el camino del deploy estático (Solid + Vite) o ejecutarás un servidor SolidStart.



1. Solid + Vite (estático)


En Solid + Vite, el build genera archivos estáticos en dist/. En tu terminal local, ejecuta:


npm run build


Publica el contenido de dist/ en el runtime estático (MAIN=index.html, o vite.html para rutas de SPA, con SUBDOMAIN y MEMORY=512), sin proceso Node.js. Consulta Deploy de un sitio estático (HTML, React, Vite).


2. SolidStart (SSR)


SolidStart ejecuta un servidor real, que permite renderizado del lado del servidor (SSR). Ejecuta npm run build: genera .output/server/index.mjs, que lee el PORT y el HOST definidos por Square Cloud (80 y 0.0.0.0). Crea un archivo squarecloud⁠.app:


MAIN=.output/server/index.mjs
MEMORY=1024
VERSION=recommended
DISPLAY_NAME=Mi app SolidStart
SUBDOMAIN=mi-app-solidstart



3. Preparando el deploy (.zip)


Para garantizar que el deploy sea rápido y sin errores, tu archivo .zip debe contener solo lo esencial:


  • Para Vite: el contenido de dist/ (ver aquí).
  • Para SolidStart: la carpeta .output/, el package.json y el squarecloud⁠.app.


Consejo: Nunca envíes la carpeta node_modules. Square Cloud hará la instalación limpia de las dependencias en el servidor.



4. Variables de entorno (ENV)


  • Las variables VITE_ se leen en el build y quedan visibles para cualquier visitante: defínelas en el .env antes de ejecutar npm run build, y nunca pongas secretos en ellas.
  • Las variables del dashboard (pestaña Variables de Entorno de la aplicación) solo sirven para código de servidor (SolidStart) y se leen cuando la aplicación inicia. Configura ahí claves como API_URL o DB_AUTH.



5. Consejos de rendimiento


  • Hidratación: Si usas SSR con SolidStart, monitorea el uso de memoria. SolidJS es muy eficiente, pero el proceso de hidratación en el servidor consume recursos durante picos de tráfico.
  • Caché: Usa el almacenamiento en caché de Square Cloud para assets estáticos (imágenes, CSS) y así reducir el tiempo de carga inicial (LCP).

Actualizado el: 04/10/2026

¿Este artículo te resultó útil?

Comparte tu opinión

Cancelar

¡Gracias!