Organisation des répertoires

De Novius OS

Repertoires à la racine

  • ~/novius-os/ : Le core de Novius OS
  • ~/local/ : Votre site
  • ~/public/ : Le DOCUMENT_ROOT du site
  • ~/logs/ : Un répertoire de logs

Le répertoire public

Un fichier peut être :

  • Exécutable ou non exécutable
  • Fourni par le developpeur ou le logiciel, ou généré par le logiciel

Cela donne 4 usages possibles. Chacun d’eux a un répertoire dans ~/public/ :

  • ~/public/static/ : Équivalent des assets. Des fichiers non exécutables fournis par le développeur ou Novius OS.
  • ~/public/data/ : Fichiers non exécutables générés par Novius OS.
  • ~/public/htdocs/ : Fichiers exécutables fournis par par le développeur ou Novius OS.
  • ~/public/cache/ : Fichiers exécutables générés par Novius OS

Note

Ici, Novius OS fait référence au core, ou toute application de votre site web.

Il y a un 5ème répertoire ~/public/media/ utilisé par la Médiathèque.

Là où Novius OS peut écrire, le développeur ne le peut pas et vice et versa.

~/public/static/ et ~/public/htdocs/ ont la même structure de sous-répertoire :

  • ~/novius-os/ : Pour les fichiers venant du logiciel
  • ~/apps/<application_name>/ : Pour les fichiers venant des developpeurs d’applications.
Ces sous-répertoires sont des liens symboliques, créés à l’installation du logiciel ou à l’activation des applications.
Ces liens symboliques pointant respectivement vers le htdocs et le static du repertoire du logiciel ou de l’application.

Le répertoire du core

  • ~/novius-os/framework/ : Le framework de Novius OS
  • ~/novius-os/fuel-core/ : Le framework FuelPHP
  • ~/novius-os/packages/ : Les packages FuelPHP

Le répertoire local

  • ~/local/applications/ : Les applications Novius OS.
  • ~/local/cache/ : Contient des médias redimensionnés.
  • ~/local/classes/ : Classes PHP de vos développements.
  • ~/local/config/ : Vos fichiers de configuration de Novius OS
  • ~/local/data/ : Fichiers générés par Novius OS
  • ~/local/metadata/ : Des fichiers de metadata de votre site, générés par Novius OS.
  • ~/local/migrations/ : Des classes de migration.
  • ~/local/views/ : Vos fichiers PHP de Views de vos développements.

Note

Les répertoires classes et views ne devrait pas contenir beaucoup de fichiers, la plupart de vos développements devrait être des applications..

D’une application

Tout Novius OS reprend les principes de segmentation issus de l’architecture MVC. Ils s’appliquent aussi bien au core qu’aux applications.

Organisation des fichiers

On distingue 6 dossiers principaux :

classes
Ce dossier regroupe la partie logique, c’est-à-dire les classes PHP qui définissent et manipulent les données. Il s’agit a minima des contrôleurs et modèles de l’application. On y retrouve également des outils utilisés par les vues ou directement par les contrôleurs.
config
Ce dossier rassemble l’ensemble des informations permettant de représenter vos modèles. Les contrôleurs effectuent les opérations logiques sur vos données, mais auront besoin d’informations complémentaires à transmettre aux vues pour leur représentation. Ces informations sont ainsi séparées des contrôleurs, n’ayant pas de valeur logique, et des vues, car celles-ci reçoivent les données en paramètres et ne les recherchent jamais.
Le fichie de configuration du contrôleur controller/admin/monkey.ctrl.php se situe à config/controller/admin/monkey.ctrl.php Une classe et son fichier de configuration partagent une convention de nommage symétrique.
lang
Ce dossier contient les fichiers de traduction, organisés en sous-dossiers par langue.
migrations
Ce dossier contient les fichiers de migration.
static
Ce dossier contient l’ensemble des scripts (JS et CSS) et ressources publiques (comme les images) chargées en front office.
views
Ce dossier contient les fichiers responsables de l’affichage et de la représentation des données.