Arborescence des dossiers

Nous utilisons deux dossiers présents à la racine :

  • templates/ pour les fichiers HTML, qui sont agrémentés du langage de gabarit de Django ;

  • assets/ pour les images, les smileys ainsi que les fichiers SCSS et JS.

Lors de la compilation, un dossier dist/ contenant les fichiers optimisés venant de assets/ est créé.

assets/

Voici un aperçu du dossier :

assets/
├── images/  # Images   ├── sprite/  # Images qui seront dans le sprite      ├── arrow-right.png
│      ├── arrow-right@2x.png # Version rétina de chaque élément du sprite      ├── arrow-right-blue.png
│      ├── arrow-right-blue@2x.png
│      ...
│   │
│    # Autres images   ├── favicon.ico
│   ├── favicon.png
│   ├── logo@2x.png  # Logo haute résolution   ├── logo.png  # Logo moyenne résolution   ...
│
├── js/  # Fichiers Javascript   ├── editor.js
│   ├── markdown-help.js
│   ├── modal.js
│   ├── zen-mode.js
│   ...
│
├── scss/  # Fichiers SCSS   ├── base/  # Styles de base pour tout le site   ├── components/  # Commposants spécifiques      ├── _editor.scss  # Ex : l'éditeur      ...
│   ├── layout/  # Styles pour la structure du site      ├── _header.scss  # Ex : l'en-tête...      ├── _sidebar.scss  # ... ou la barre latérale      ...
│   ├── mixins/  # Mixins SCSS   ├── pages/  # Styles pour certaines pages      ├── _home.scss  # Ex : la page d'accueil      ...
│   ├── variables/  # Variables SCSS   │
│   ├── main.scss  # Fichier de configuation   ├── zmd.scss  # Feuille de style pour EPUB   ├── _sprite.scss.hbs  # Template Handlebars pour la création du sprite   ...
│
└── smileys/  # Smileys
    ├── ange.png
    ├── angry.gif
    ...

dist/

Voilà à peu près ce qui est généré lors du « build » :

dist/
├── css/
│   ├── main.css  # Tout le CSS compilé et minifié   ├── main.map # SourceMap associé   ├── zmd.css  # Feuille de style pour EPUB   └── zmd.map # SourceMap associé
│
├── images/
│   ├── sprite@2x.png  # Sprite haute résolution   ├── sprite.png  # Sprite moyenne résolution   │
│    # Images compressées   ├── favicon.ico
│   ├── favicon.png
│   ├── logo@2x.png
│   ├── logo.png
│   ...
│
├── js/
│   ├── script.js  # Tout le JS concaténé et minifié   └── script.js.map  # SourceMap associé
│
└── smileys/
    ├── ange.png
    ├── angry.gif
    ...

templates/

Voici un extrait du dossier contenant les gabaris :

templates/
├── tutorial/  # Dossier contenant les gabaris des pages du module des tutoriels   ├── tutorial/
│   ├── chapter/  # Gabarits pour les chapitres      ├── edit.html
│      ├── new.html
│      ...
│   │
│   ├── extract/  # Gabarits pour les extraits   │
│   ├── base.html
│   ├── export.html
│   ...
│
├── pages/  # Dossier contenant les pages du site   ├── technologies.html
│   ├── contact.html
│   ...
│
├── misc/  # Dossier contenant des fichiers utilisés dans plusieurs modules   ├── preview.part.html  # Ex : la prévisualisation des messages...   ├── zen_button.part.html  # ... ou le bouton de lecture zen   ...
...