Salchimonster
🤖 Guía para IA
Apps activas
📦

Cargando apps…

Subir y desplegar app
Estructura requerida del ZIP
🤖
Descarga la guía para tu IA
Dale este .md a ChatGPT, Claude o tu IA favorita y pídele que te genere el proyecto completo listo para desplegar.
⬇ Descargar STRUCTURE.md

Comprime tu app en un .zip con la siguiente estructura de carpetas:

mi-app.zip ├── frontend/ # Archivos estáticos (HTML/CSS/JS o build de React/Vue) │ ├── index.html # requerido si hay frontend │ ├── style.css │ └── ... ├── backend/ # API Python compatible con uvicorn │ ├── main.py # requerido — debe exponer app = FastAPI() │ ├── requirements.txt # requerido — dependencias Python │ └── ... └── database/ # opcional └── app.db # SQLite preexistente (opcional)
💡 El ZIP puede tener las carpetas en la raíz o dentro de una carpeta contenedora (ej: mi-app/frontend/...). Ambos formatos son aceptados.
URLs asignadas por app
FRONT  http://{slug-de-la-app}.bryan.salchimonster.com — servido por nginx como sitio estático (SPA compatible)
BACK  http://salchimonster.com:{puerto} — puertos desde 9000 en adelante, uno por app
Reglas del backend
  • El framework debe ser compatible con uvicorn (FastAPI, Starlette).
  • El punto de entrada es backend/main.py con una variable app.
  • Se crea un virtualenv automáticamente e instalan las dependencias.
  • Se registra un servicio systemd para que el backend sobreviva reinicios.
Ejemplo de backend mínimo
# backend/main.py from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware app = FastAPI() app.add_middleware(CORSMiddleware, allow_origins=["*"], allow_methods=["*"], allow_headers=["*"]) @app.get("/") def root(): return {"status": "ok"}