Codeqlick Cloud · para developers

Documentación

Empezar

Necesitas Node 20 o posterior y una cuenta de Codeqlick.

  1. Crea tu equipo en la consola.
  2. Inicia sesión desde tu terminal (abre el navegador para que lo apruebes):
npx @codeqlick/cli login
  1. En la carpeta de tu proyecto, enlázalo con un proyecto de Cloud (o crea uno):
npx @codeqlick/cli init
  1. Compila tu web y despliégala:
npm run build
npx @codeqlick/cli deploy dist --prod

Tu web queda en https://<proyecto>.codeqlick.app. Si lo usas a menudo, instálalo con npm i -g @codeqlick/cli y escribe solo codeqlick.

La herramienta de línea de comandos

| Orden | Qué hace | |---|---| | codeqlick login | Inicia sesión aprobándolo en el navegador (--token <cqk_…> para usar un token) | | codeqlick logout | Olvida el token guardado en este equipo | | codeqlick whoami | Tu cuenta y tus equipos | | codeqlick init | Enlaza la carpeta con un proyecto (escribe codeqlick.json) | | codeqlick deploy [carpeta] | Sube la carpeta como un despliegue nuevo (--prod lo publica, -m "mensaje") | | codeqlick deployments | Los despliegues del proyecto, el más reciente primero | | codeqlick promote <id> | Publica un despliegue anterior | | codeqlick rollback | Vuelve al despliegue publicado antes del actual | | codeqlick domains | Tus dominios (add, check y rm <dominio>) | | codeqlick open | Abre la web publicada |

codeqlick.json guarda el equipo, el proyecto y la carpeta que se despliega; súbelo a tu repositorio. El token se guarda en ~/.config/codeqlick/config.json (solo lo lee tu usuario).

Despliegues y vistas previas

Cada deploy crea un despliegue que no cambia nunca, con su propia dirección: https://<proyecto>--<id>.codeqlick.app (sin indexar en buscadores). Sin --prod es una vista previa; con --prod además pasa a ser la versión publicada en https://<proyecto>.codeqlick.app y en tus dominios.

Para volver atrás, codeqlick rollback o el botón «Publicar» de cualquier despliegue en la consola. El cambio es instantáneo y atómico: nadie ve media web.

Guardamos los 20 últimos despliegues de cada proyecto, además del publicado. No hacemos copia de tus archivos: guarda tus fuentes.

Qué se sube: todo lo de la carpeta salvo los archivos y carpetas que empiezan por punto (excepto .well-known). Para excluir más, añade un .codeqlickignore con un patrón por línea (*.map, drafts/). Debe haber un index.html en la raíz.

Rutas, 404 y aplicaciones de una página

  • /sobre sirve sobre.html o sobre/index.html.
  • Si existe 404.html, se muestra para las páginas que no existen.
  • Si existe 200.html, se sirve para cualquier ruta que no exista: así funcionan las aplicaciones de una página (React Router, Vue Router…). Copia tu index.html como 200.html al compilar.
  • Los archivos de /assets/, /_astro/ y /_next/static/ se guardan en caché un año; el HTML se revalida siempre.

Dominios propios

En la consola (pestaña «Dominios») o con codeqlick domains add docs.tudominio.com:

  1. Demuestra que es tuyo con un registro TXT _codeqlick.<dominio> con el valor que te mostramos.
  2. Apúntalo aquí: un subdominio con un CNAME a <proyecto>.codeqlick.app; un dominio raíz con un registro A a la IP que te mostramos.
  3. En unos minutos tendrá su certificado HTTPS y quedará activo. Lo comprobamos solos cada 10 minutos, o al pulsar «Comprobar».

Hasta 5 dominios por proyecto. www.tudominio.com y tudominio.com son dos dominios.

Desde GitHub Actions u otro CI

Crea un token en la consola (Tokens, mejor limitado al equipo) y guárdalo como secreto CODEQLICK_TOKEN:

- run: npm ci && npm run build
- run: npx @codeqlick/cli deploy dist --prod -m "${{ github.event.head_commit.message }}"
  env:
    CODEQLICK_TOKEN: ${{ secrets.CODEQLICK_TOKEN }}

Con codeqlick.json en el repositorio no hace falta más. Sin él, añade CODEQLICK_TEAM y CODEQLICK_PROJECT. En GitHub Actions se guardan el commit y la rama de cada despliegue.

Equipos y permisos

  • Propietario: todo, incluido borrar el equipo y nombrar a otros propietarios.
  • Administrador: miembros, invitaciones y proyectos.
  • Miembro: despliega, gestiona dominios y lo ve todo.

Las invitaciones llegan por email y solo las acepta una cuenta con ese email. El historial del equipo guarda cada cambio, quién lo hizo y desde qué token.

Límites del plan gratuito

| | | |---|---| | Equipos propios | 3 | | Proyectos por equipo | 10 | | Almacenamiento por equipo | 1 GB | | Tamaño de un despliegue | 100 MB y 10.000 archivos (50 MB comprimido) | | Despliegues | 30 por hora y equipo | | Dominios por proyecto | 5 | | Miembros por equipo | 10 | | Tokens por persona | 20 |

El tráfico es de uso razonable: cada dirección admite 50 peticiones por segundo. Si lo superas a menudo te avisaremos antes de nada.

API

Todo lo que hace la consola está en https://api.codeqlick.com/v1/cloud, con Authorization: Bearer <token>. Un despliegue es un multipart/form-data con el campo bundle (la carpeta en .tar.gz) y, si quieres, target (preview o production), message, commit y branch:

tar -czf site.tar.gz -C dist .
curl -fsS -H "Authorization: Bearer $CODEQLICK_TOKEN" \
  -F bundle=@site.tar.gz -F target=production \
  https://api.codeqlick.com/v1/cloud/projects/<id>/deployments

Otras rutas: GET /cloud/me, GET /cloud/teams/<equipo>/projects, GET /cloud/projects/<id>/deployments, POST …/deployments/<id>/promote, GET|POST /cloud/projects/<id>/domains. Los errores siguen RFC 9457 (application/problem+json).

Denunciar un abuso

Si ves una página alojada aquí que engaña, distribuye malware o infringe derechos, denúnciala.