Skip to content

Framework de desarrollo rápido de aplicaciones web y móviles, con un editor visual de vistas, que integra cliente (frontend) en JavaScript y servidor (backend) headless en PHP. Foxtrot busca ser el framework-ultra-liviano-multi-plataforma-todo-en-uno más fácil de aprender y de usar.

master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

👋 ¡Hola!

Si clonás Foxtrot, queremos conocer tu opinión. Escribinos sin compromiso a contacto@foxtrot.ar. ¡Gracias por tu visita!

Nota: El framework se encuentra en pleno desarrollo. ¡Pero estamos a nada de la primer versión MVP!

Qué es Foxtrot Framework

Foxtrot es un framework de desarrollo rápido de aplicaciones web y móviles, con un editor visual de vistas, que integra cliente (frontend) en JavaScript y servidor (backend) headless en PHP, y que busca ser el framework-ultra-liviano-multi-plataforma-todo-en-uno más fácil de aprender y de usar.

Tenemos el compromiso de crear un framework que no sea como todos los demás, uno que no sobrecargue ni al sistema, ni al equipo del usuario, ni la cabeza del programador. Uno que prácticamente no requiera configuración, sea super-fácil de usar y que esté escrito en lenguaje casi-humano.

¿Qué es? ¿Por qué se desarrolla? ¿Dónde está la documentación? 👉 Accedé al Wiki (en redacción).

Primeros pasos

Video de introducción
Instalación, descripción del gestor, el editor y la estructura del sistema, y vistazo general a las principales funciones.

Aplicación de ejemplo
Usuario: admin
Contraseña: admin
Nota: La aplicación de ejemplo publicada es de código cerrado y solo se incluye en este repositorio una pequeña parte suficiente para demostrar la funcionalidad de Foxtrot y servir de guía para comenzar tu desarrollo.

¿Comentarios?
🤷‍♂️ ¿Dudas?
🤓 ¿Querés aprender a usar el framework? (cursos y soporte personalizado sin cargo)
¿Te gustaría contribuir?
Escribinos: contacto@foxtrot.ar

Apoyá el desarrollo
Desarrollo en vivo
Podcast, tutoriales y más (en producción)

Estado

Gestor de aplicaciones (¡adiós línea de comandos!).

Editor de vistas completamente funcional.

Integración vista - controlador JS - controlador PHP completa.

Acceso a datos y ORM, completos.

Compilación

Ver Estado del proyecto - Pendientes - Funcionalidad futura.

Aplicación de ejemplo

Se incluye una aplicación de ejemplo demostrando las funciones principales del framework.

Más información.

Documentación

Wiki

https://github.com/gquagliano/experimental-foxtrot-framework/wiki

PHP

https://github.com/gquagliano/experimental-foxtrot-framework/wiki/phpdoc-indice

JS

https://github.com/gquagliano/experimental-foxtrot-framework/wiki/jsdoc-indice

Estructura del proyecto

/fuente/ Código fuente del framework.

/desarrollo/ Framework compilado + Código fuente de las aplicaciones.

/produccion/ Framework y aplicaciones compilados. No es necesario instalar nada en el servidor, solo copiar el contenido de este directorio.

/embeber/ Framework y una aplicación específica compilados para embeber en Cordova o el cliente de escritorio.

/gestor/ Gestor de aplicaciones.

/construir/ Asistente de construcción o compilación del framework.

Qué estamos desarrollando

Gestor de aplicaciones y editor visual

Un gestor de aplicaciones permite crear vistas, crear controladores, ejecutar los distintos asistentes, gestionar el modelo de datos y acceder al editor en forma interactiva.

El framework cuenta con un editor de vistas WYSIWYG Drag&drop, que almacena la vista lista para mostrar en HTML/CSS, lo cual lo hace extremadamente rápido, pero sin perder la relación entre elementos del DOM y los objetos del framework.

El editor también permite configurar visualmente estructuras de control (bucles, condicionales, etc.), variables (acceso a datos) e integraciones con los controladores JS y PHP de la vista.

Más información sobre el gestor de aplicaciones.

Más información sobre el editor de vistas.

Listado de componentes.

Estructura y guía de desarrollo de componentes.

Estructura de las aplicaciones

El framework es multi-aplicación, lo que significa que el desarrollador puede trabajar en varias aplicaciones a la vez, y un servidor puede alojar múltiples aplicaciones a la vez, con una única instalación de Foxtrot, simplificando el mantenimiento y las actualizaciones.

Más información sobre las aplicaciones y su estructura.

API

El framework está dividido en cliente y servidor, pero desacoplados: Ambos pueden residir en la misma ubicación (el cliente se descarga desde el mismo servidor web) o separados (por ejemplo, cliente local en una aplicación móvil o de escritorio).

El lado del servidor está compuesto por controladores de servidor y el modelo de datos (incluye ORM propio).

El lado del cliente está compuesto por controladores de cliente y vistas. Cada vista está compuesta por componentes, los cuales guardan relación con los elementos del DOM y permiten la manipulación de la vista mediante sus métodos y propiedades. Existen componentes que representan estructuras de control (condicionales, bucles, inclusión de una vista dentro de otra, etc.) automatizando la presentación de información y la navegación. Incluye un gestor del DOM propio (reemplaza a jQuery).

Más información en el Wiki.

Comunicación cliente<->servidor transparente

El framework permite una comunicación transparente entre controladores del lado del cliente y controladores del lado del servidor. El desarrollador puede invocar un método desde uno hacia el otro como si se tratara de una misma plataforma.

Compilación

Las aplicaciones se compilan con Closure y comprimen, para garantizar carga y ejecución rápidos, tanto en web como en dispositivos. Es compatible con Cordova y un cliente Windows que se encuentra en desarrollo.

ORM

Un ORM propio liviano y fácil de utilizar reduce al mínimo, o elimina en muchos casos, el uso de código SQL, aumentando así la seguridad y mejorando el diseño de los objetos de la aplicación. Se define íntegramente mediante objetos, contribuyendo con el control de errores y el autocompletado al escribir código. El ORM permite crear y mantener actualizada la estructura de la base de datos a partir del código PHP del modelo de datos. Además, como todo en Foxtrot, sus métodos están en español.

Documentación del ORM.

Intérprete lógico-matemático (JS)

Desarrollamos un intérprete para permitir la inserción de variables, llamados a funciones y expresiones simples en cualquier texto, donde las expresiones se encierran entre { y }. La finalidad del mismo es simplificar el enlace de la interfaz con el código fuente y los datos.

El intérprete deberá portarse a PHP si se ofrece la posibilidad de pre-procesar algunos componentes del lado del servidor.

Módulos

Existen diferentes utilidades que se pueden incluir del lado del cliente y/o del lado del servidor en forma de módulos o plug-ins, para la asistencia en la implementación de servicios de terceros (como reCaptcha o Firebase) y la realización de tareas específicas (como generar PDF o XLS).

Más información sobre los módulos y listado de módulos existentes.

Colaboraciones

Toda colaboración es bienvenida. Podés ponerte en contacto con nosotros en contacto@foxtrot.ar para conversar y aclarar todas las dudas acerca del proyecto.

Más información

contacto@foxtrot.ar
www.foxtrot.ar

Licencia: Apache 2.0

Íconos por:
Icons8 - https://icons8.com/icons/material-outlined
Heroicons - https://heroicons.com/
Foxtrot (algunos son originales)

About

Framework de desarrollo rápido de aplicaciones web y móviles, con un editor visual de vistas, que integra cliente (frontend) en JavaScript y servidor (backend) headless en PHP. Foxtrot busca ser el framework-ultra-liviano-multi-plataforma-todo-en-uno más fácil de aprender y de usar.

Topics

Resources

License

Releases

No releases published

Packages

No packages published