Estado:
Un marco de creación de aplicaciones modular (HMVC): completo con interfaz, API REST y 2 áreas de administración (Administrador/Segura)
crear módulos "blox" para crear aplicaciones web de clase empresarial
utiliza Codeigniter 3.x y Bootstrap 4.xx
Se puede utilizar como iniciador/repetitivo de proyecto de inicio rápido.
¿Qué son los blox? Los "Blox" son simplemente módulos o subprogramas conectables que se utilizan comúnmente en aplicaciones web. Ignition Go incluye un generador basado en web (ver BuildABlox). El ejemplo planificado "blox" sería un envío de correo electrónico masivo, un administrador de informes y mucho más.
La documentación ya está disponible: [Documentación de Ignition-Go en GitHub] (http://ci-blox.github.io/Ignition-Go/#/concepts/ACL) Eche un vistazo a los documentos de conceptos clave y también consulte los /docs. carpeta para más.
Puede ejecutar PHP 7.3 en versiones inferiores (5.6), pero la versión recomendada para producción es PHP 7.3 para sus proyectos. PHP 7.3 ahora es compatible con el código más reciente y cualquier versión inferior a PHP 7.3 ya no es compatible oficialmente.
Apache 2.4+ con mod de reescritura habilitado
MySQL 5.5+ o MariaDb
****NOTA: ahora usamos Yarn para paquetes (por lo que Bower no es necesario/opcional).
GIT clona este repositorio
Ejemplo: git clone https://github.com/ci-blox/Ignition-Go.git myigoapp
Cualquiera:
2a) use Yarn y Gulpjs (muy recomendado para no expertos): vaya al paso 3
-o-
2b) asigne su servidor web a la carpeta 'pública' para usar versiones preinstaladas de paquetes
(salte al paso 8)
Instale NPM node.js: administrador de paquetes para módulos de nodo e [instale Yarn] (https://yarnpkg.com/lang/en/docs/install/)
Cambiar directorio a la nueva raíz del sitio/aplicación web
Ejemplo: cd myigoapp
Instalar todos los paquetes y componentes.
Tipo: yarn install
Cree una base de datos mySql o MariaDb vacía (el nombre predeterminado de la base de datos es ci_blox) y un usuario (el valor predeterminado es root/sin contraseña). Tenga en cuenta que el archivo Database.php en application/config contiene estos ajustes de configuración.
Ejemplo: usar una herramienta como HeidiSQL o phpMyAdmin y crear una base de datos y un usuario con privilegios para esa nueva base de datos.
Ejecute 'gulp' (tenga en cuenta que gulp se ejecutará continuamente en modo 'watch', observando los cambios de css y js).
entonces
CUALQUIER tipo: gulp
O... escriba: gulp serve O... escriba: gulp build que simplemente reconstruye JS y CSS
(Opcional, obligatorio si no hay trago o está en producción) En Apache, asigne la carpeta 'pública' a localhost u otra URL
Ejemplo: en su archivo httpd-vhosts.conf, agregue la nueva sección <VirtualHost> y reinicie Apache
Vaya a http://[your-web-root-from-step-7]/install/init en su navegador para terminar de usar el asistente de instalación.
por ejemplo, si usó gulp, vaya a http://localhost:8080/install/init
Si ha creado el host virtual igotestlocal.com, vaya a http://igotestlocal.com/install/init en su navegador.
Ignition Go es un impulso para su rápido desarrollo:
Sitio web multifacético (por ejemplo, sitio web frontend, módulos solo para usuarios autorizados, panel de administración y API) en una sola aplicación
Diseño modular utilizando la extensión CodeIgniter HMVC
Archivos de configuración personalizados (sites.php, locale.php) para una fácil configuración del comportamiento del sitio web
Frontend con múltiples temas (con más de 16 temas gratuitos de Bootswatch)
Panel de administración con tema AdminLTE v3
Incluye el uso de muchas otras bibliotecas opcionales de terceros a través de Composer, NPM o Yarn
Sitio API para manejar puntos finales RESTful
Autenticación de usuario (opcional) para el área segura en el sitio web frontend (registro, inicio de sesión, olvidé mi contraseña, etc.)
Autenticación de usuario para el Panel de administración (iniciar sesión, cambiar contraseña, etc.)
Diseños y plantillas preestablecidos
Canalización de activos preestablecidos (por ejemplo, minificar scripts, optimización de imágenes) a través de Gulp (referencia de la rama gulp-starter 2.0)
Módulo Buildablox blox/creador de formularios para generar vistas de formularios blox y CRUD con tema Bootstrap, validación de formularios
Manejo de ruta de navegación y paginación
Soporte multilingüe
Configuración de configuración de correo electrónico
Funciones de la utilidad CLI (por ejemplo, trabajo cron, copia de seguridad de la base de datos)
Cliente Guzzle integrado como biblioteca (úselo en lugar de Curl)
Utilice Gulp Serve para ver instantáneamente actualizaciones del código.
Estructura de carpetas (se muestran la mayoría de las carpetas, pero no todas). **=aún no disponible
application/ --- Main application (CodeIgniter) source folder
config/ --- Config files
production/ --- Override Configuration when ENVIRONMENT is set as "production"
controllers/ --- Controllers for Frontend Website; extends from MX_Controller, Base_Controller or Front_Controller
Cli.php --- Utility function that can only be called from command line
Home.php --- Default controller for Frontend Website
core/ --- Extending CodeIgniter core classes; can also be used within modules (MY_????.php); Also extendable controllers here
helpers/ --- Contains custom helper functions being used throughout this repo
language/ --- Preset language files
lib/ --- Custom libraries (e.g. Data Importer)
models/ --- Sample model extending from MY_Model
toolblox/ ** --- Each blox module can be installed or removed
modules/ --- Each module can be accessed by http://{base_url}/{module_name}/{module_controller}/, etc.
admin/ --- Module for Admin Panel
config/ --- Configuration for Admin Panel (overriding application/config/)
controllers/ --- Controllers for Admin Panel; also extends from MY_Controller
helpers/ --- Helper classes, e.g. to generate AdminLTE widgets
lib/ --- Libraries admin
models/ --- Models only being used in Admin panel
views/ --- Views for Admin Panel; can reuse Frontend views, or override by using same path/filename
api/ --- A module specific for REST API endpoints
buildablox/ --- A module to generate and add/remove blox
logs/ --- A module for viewing the daily logs
securinator/ --- A module for roles, permissions, security settings
translate/ --- A module to edit (and auto-generate**) translations
third_party/
MX/ --- Required for HMVC extension
views/ --- Views for Frontend Website
public/ --- SITE ROOT (point Apache here)
public/assets/
css/ --- Custom CSS files append to each site
dist/ --- Minified scripts, stylesheets (and optionally) optimized images via Gulp tasks
fonts/ --- Font files copied via Gulp tasks
img/ --- Source image files before optimization
js/ --- Custom CSS files append to each site
uploads/ --- Default directory of upload files, where permission should set as writable
gulpfile.js/ --- Task runner following gulp-starter 2.0 practice
sql/ --- MySQL files
igocore/ --- Ignition Go core files
igocore/system/ --- CodeIgniter core files (clean CI3 installation with modifications only to reference IGO core)Se incluye una configuración gulp ( gulpfile.js ). Utiliza herramientas de paquetes y componentes de estos sitios:
NPM node.js: administrador de paquetes para módulos de nodo
Hilo: administrador de paquetes
GulpJS gulp: ejecutor de tareas para compilar, combinar y minimizar
Guzzle guzzle: integrado para usar como cliente REST o para operaciones complejas de curl
Por favor contáctenos para contribuir.
Un agradecimiento especial al proyecto Bonfire y a quienes contribuyeron a él: muchas características y conceptos de infraestructura se inspiraron o incorporaron directamente a partir de ese proyecto. También gracias a todos los proyectos como GuzzlePHP y un sinfín de otros que son de código abierto, cuyos componentes se incorporan y permiten que exista esta iniciativa. Finalmente, gracias especialmente al equipo de CodeIgniter, ¡con quienes CodeIgniter continúa prosperando!