Statut:
Un cadre de création d'applications modulaire (HMVC) - complet avec front-end, API REST et 2 zones d'administration (Admin / Sécurisé)
créer des modules "blox" pour créer des applications Web de classe entreprise
utilise Codeigniter 3.x et Bootstrap 4.xx
peut être utilisé comme démarreur/passe-partout de projet à démarrage rapide
Que sont les blox ? Les « Blox » ne sont que des modules ou des applets enfichables couramment utilisés dans les applications Web. Ignition Go comprend un générateur basé sur le Web (voir BuildABlox). L'exemple prévu "blox" serait un envoi d'e-mails en masse, un gestionnaire de rapports et bien d'autres encore !!!
La documentation est maintenant disponible : [Documentation Ignition-Go sur GitHub] (http://ci-blox.github.io/Ignition-Go/#/concepts/ACL) Jetez un œil aux documents sur les concepts clés et consultez également les /docs dossier pour en savoir plus.
PHP 7.3, vous pouvez l'exécuter en version inférieure (5.6), mais la version recommandée pour la production est PHP 7.3 pour vos projets. PHP 7.3 est désormais pris en charge dans le dernier code et tout ce qui est inférieur à PHP 7.3 n'est plus officiellement pris en charge.
Apache 2.4+ avec le mod de réécriture activé
MySQL 5.5+ ou MariaDb
****REMARQUE : nous utilisons désormais Yarn pour les packages (donc Bower n'est pas nécessaire/facultatif).
GIT clone ce dépôt
Exemple : git clone https://github.com/ci-blox/Ignition-Go.git myigoapp
Soit:
2a) utilisez Yarn et Gulpjs (fortement recommandé pour les non-experts) - passez à l'étape 3
-ou-
2b) mappez votre serveur Web au dossier « public » pour utiliser les versions préinstallées des packages
(passer à l'étape 8)
Installez NPM node.js : gestionnaire de packages pour les modules de nœuds et [installez Yarn] (https://yarnpkg.com/lang/en/docs/install/)
Changer le répertoire vers la nouvelle racine du site/de l'application Web
Exemple : cd myigoapp
Installez tous les packages et composants
Type: yarn install
Créez une base de données mySql ou MariaDb vide (le nom de la base de données par défaut est ci_blox) et un utilisateur (la valeur par défaut est root/pas de mot de passe). Notez que le fichier database.php dans application/config contient ces paramètres de configuration.
Exemple : utilisez un outil comme HeidiSQL ou phpMyAdmin et créez à la fois une base de données et un utilisateur avec les privilèges de cette nouvelle base de données
Exécutez 'gulp' (notez que gulp s'exécutera en continu en mode 'watch', surveillant les modifications CSS et js).
alors
SOIT type : gulp
OU.. tapez : gulp serve
OU.. tapez : gulp build
qui reconstruit juste le JS et le CSS
(Facultatif, obligatoire si pas de gulp ou en production) Dans Apache, mappez le dossier « public » à localhost ou à une autre URL
Exemple : dans votre fichier httpd-vhosts.conf, ajoutez une nouvelle section <VirtualHost>
et redémarrez Apache
Accédez à http://[your-web-root-from-step-7]/install/init dans votre navigateur pour terminer l'utilisation de l'assistant d'installation.
par exemple, si vous avez utilisé gulp, allez sur http://localhost:8080/install/init
si vous avez créé l'hôte virtuel igotestlocal.com, rendez-vous sur http://igotestlocal.com/install/init dans votre navigateur
Ignition Go est un tremplin pour votre développement rapide :
Site Web à multiples facettes (par exemple, site Web frontal, modules pour utilisateurs autorisés uniquement, panneau d'administration et API) dans une seule application
Conception modulaire utilisant l'extension CodeIgniter HMVC
Fichiers de configuration personnalisés (sites.php, locale.php) pour une configuration facile du comportement du site Web
Frontend avec plusieurs thèmes (avec plus de 16 thèmes Bootswatch gratuits)
Panneau d'administration avec thème AdminLTE v3
Comprend l'utilisation de nombreuses autres bibliothèques facultatives tierces via Composer, NPM ou Yarn
Site API pour gérer les points de terminaison RESTful
Authentification de l'utilisateur (facultatif) pour la zone sécurisée du site Web frontal (inscription, connexion, mot de passe oublié, etc.)
Authentification de l'utilisateur pour le panneau d'administration (connexion, changement de mot de passe, etc.)
Dispositions et modèles prédéfinis
Pipeline d'actifs prédéfinis (par exemple, scripts de réduction, optimisation d'image) via Gulp (référence de la branche gulp-starter 2.0)
Module/générateur de formulaire Buildablox blox pour générer des vues de formulaire blox et CRUD avec le thème Bootstrap, validation de formulaire
Gestion du fil d'Ariane et de la pagination
Prise en charge multilingue
Configuration de la configuration de la messagerie
Fonctions utilitaires CLI (par exemple tâche cron, sauvegarde de base de données)
Client Guzzle intégré en bibliothèque (à utiliser à la place de Curl)
Utilisez gulp serve pour voir instantanément les mises à jour du code
Structure des dossiers (la plupart des dossiers sont affichés, mais pas tous). **=pas encore 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)
Une configuration gulp ( gulpfile.js ) est incluse. Il utilise les outils de packages et de composants de ces sites :
NPM node.js : gestionnaire de packages pour les modules de nœuds
Fil : gestionnaire de paquets
GulpJS gulp : exécuteur de tâches pour compiler, combiner et réduire
Guzzle guzzle : intégré pour une utilisation en tant que client REST ou pour des opérations curl complexes
Veuillez nous contacter pour contribuer.
Un merci spécial au projet Bonfire et à ceux qui y ont contribué - de nombreuses fonctionnalités et concepts d'infrastructure ont été inspirés ou directement intégrés à partir de ce projet. Merci également à tous les projets comme GuzzlePHP et d'innombrables autres open source, dont les composants sont incorporés et permettent à cette initiative d'exister. Enfin, merci tout particulièrement à l'équipe CodeIgniter, avec qui CodeIgniter continue de prospérer !