Saltar al contenido principal

Introducción para desarrolladores

Esta sección es para desarrolladores que quieren extender, integrar o mantener el framework. Si eres usuario final, tu lugar es la Documentación principal.

¿Qué encontrarás aquí?

  • Arquitectura interna — cómo está estructurado el código: MVC, componentes (API/CMS/Web), stack técnico.
  • API REST — endpoints CRUD dinámicos, autenticación con API Key + JWT, filtros, ejemplos en JavaScript y PHP.
  • CLI y MCP — herramientas de línea de comandos y el servidor Model Context Protocol para integrar con agentes de IA como Claude.
  • Agente crear páginas — guía específica para agentes de IA que necesitan crear sistemas completos y páginas por CLI.
  • Guía de desarrollo — tests, generadores, convenciones de código.
  • Seguridad — API Keys, JWT, CSRF, hash de contraseñas y prácticas de defensa.

Stack técnico resumido

  • Backend: PHP 7.4+ nativo (MVC propio), MySQL/MariaDB, Composer.
  • Autenticación: API Key + JWT (Firebase JWT).
  • Frontend del CMS: Bootstrap 5, jQuery, Chart.js, Summernote, CodeMirror, Select2.
  • MCP: Node.js/TypeScript, stdio transport.
  • Dev: Docker (docker-compose.dev.yml, Dockerfile.dev).

Filosofía

  • Sin escribir código repetitivo: el CMS y la API se generan a partir de la definición de tablas.
  • Plugins autocontenidos: cada plugin vive en su carpeta y no depende de otros; se comunican vía hooks guardados y lectura de tablas.
  • Convención sobre configuración: nombres estándares (config.example.php, migrations/, plugins/<nombre>/<nombre>.php) permiten introspección automática.
  • Retrocompatible: los cambios preservan el comportamiento anterior por defecto.

Cómo trabajar con el código

  1. Clona el repositorio.
  2. Instala dependencias (composer install en api/ y cms/extensions/).
  3. Corre sudo ./setup.sh para configuración y permisos.
  4. Ejecuta tests: php tests/run.php.
  5. Ver Guía de desarrollo para detalles.

Recursos

  • Introspección en tiempo real: php tools/introspect.php te da un JSON con plugins activos, tablas y relaciones.
  • Doctor: php tools/doctor.php diagnostica tu entorno.
  • Generadores: php tools/make-*.php para crear tablas, plugins, páginas, migraciones.

Contribuir

Si estás contribuyendo al framework:

  • Rama de trabajo: PRs contra development.
  • Tests: deben pasar (php tests/run.php).
  • Estilo: sigue convenciones del código existente.

¿Qué sigue?

Empieza por Arquitectura interna para tener el panorama completo antes de meterte a un módulo específico.