Skip to content

ghazal/tester-joomla-4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Tester-joomla-4

Tester Joomla 4 avec Composer et Node/NPM

Ce tuto porte essentiellement sur un environnement macOS. Je ne peux donner que des pistes pour les autres OS.

Pour tester Joomla 4 avec ses dépendances, on a besoin d'un outil indispensable: un Terminal.

Pour macOS

J'utilise iTerm2 pour macOS, une alternative performante au Terminal natif de mac.

iTerm2 - macOS Terminal Replacement

Pour Windows

Microsoft vient de sortir un Terminal développé par ses soins:

Windows Terminal

Lire les attentivement les explications sur Github, il existe quelques restrictions.

FAQ sur Github

PuTTY - a free SSH and telnet client for Windows

Cmder | Console Emulator

pour Linux

Pas de conseil à donner aux Linuxiens. Cet outil est dans l'ADN de Linux.

Paramétrer l'environnement local pour Joomla 4

On aura besoin d'installer Git et Node/NPM via la CLI (Command Line Interface).

Pour macOS

Après pas mal de tâtonnements, j'ai finalement choisi de passer par Homebrew pour mettre en place Git et Node/NPM.

Intaller Homebrew

Le gestionnaire de paquets pour macOS — Homebrew

  • La commande d'installation de Homebrew à copier coller dans le Terminal:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Installer Git

  • Commande pour installer Git via Homebrew
brew install git

Installer Node et NPM

Rien de plus simple avec Homebrew.

  • Commande pour installer Node et NPM via Homebrew
brew install node

Pour contrôler que Node et NPM sont correctement installés, il suffit de vérifier leurs versions :

node -v
npm -v

Il est à noter que la commande -g - pour "globally" - n'apparaît pas dans ces commandes. C'est là tout l'intérêt de Homebrew.

Avant de passer par Homebrew, je trouvais plein de posts où l'on conseillait de faire un sudo pour récupérer les droits root en tant qu'admin système. Pas très recommandé pour macOS.

sudu boo

Astuce

On peut mettre à jour Homebrew, Node et NPM avec une seule commande :

brew update && brew upgrade node && npm update -g npm

pour Windows

Installer Git

Ce tuto me paraît approprié :

Installing Git on Linux, Mac OS X and Windows

Installer Node et NPM

How to Install Node.js® and NPM on Windows

Install Node.js and NPM on Windows

pour Linux

Installer Git

Même tuto que plus haut :

Installing Git on Linux, Mac OS X and Windows

Installer Node et NPM

How to Install Node.js and NPM on Linux

Installer Joomla 4

1 - Créer un dossier - testj4, par exemple - sur le serveur local.

2 - Dans le Terminal, définir le chemin vers le répertoire d'installation sur le serveur, en principe /htdocs/.

  • pour MAMP

      cd /Applications/MAMP/htdocs/testj4
    
  • pour Bitnami

      cd /Applications/mampstack-[versionPHP]/apache2/htdocs/testj4
    

3 - Télécharger Joomla 4 via la command line

git clone --depth=1 -b 4.0-dev https://github.com/joomla/joomla-cms/

C'est très rapide, et une fois l'opération terminée, on verra apparaître un dossier /joomla-cms/ dans /testj4/.

Pas la peine de déplacer /joomla-cms/, il suffit d'indiquer le bon chemin :

	cd joomla-cms

3bis - Tester un pull request

Pour proposer une modif du code, on doit créer un fork du repo original. En d'autres termes, un clone de joomla-cms. Pour tester, on peut aller le chercher via la command line

ou

le récupérer sur issues.joomla.org, comme sur l'image.

demo sur Issues

4 - Installer Composer

Il n'est pas nécessaire d'installer Composer globally. Les fichiers composer.json et composer.lock sont là pour faire le job.

Commande pour installer Composer :

	composer install

Quand on voit Generating optimized autoload files, c'est bon.

5 - Installer NPM

Commande pour installer NPM :

	npm ci

Il y a plusieurs commandes pour installer NPM dans un répertoire, celle-ci est recommandée par les développeurs de Joomla.

Une définition dans la doc NPM :

npm-ci | npm Documentation

6 - A cette étape, aller boire un café, discuter avec son voisin, ça peut prendre un moment.

Les fichiers des paquets contenus dans NPM s'installent dans un dossier /node_modules/, puis, à l'aide de ces fichiers, les scripts Joomla installent tous les fichiers sass, css, js dans les bons dossiers.

7 - Quand tout est fini, si tout s'est bien passé, on voit :

Testing binary

Binary is fine

puis, plus bas :

added 1010 packages in 300.388s

... et on est content.

Dernière étape

A partir de là, on peut installer Joomla 4 classiquement sur le serveur.

Les commandes internes

Une fois Joomla 4 correctement installé sur le serveur, on peut utiliser les commandes suivantes si on modifie un fichier .scss ou .js :

npm run watch:css

ou

npm run build:js

Ces commandes vont chercher les modifications et mettre à jour les fichiers concernés.

Exemple d'utilisation de npm run build:css pour template.css

  • Dans le dossier /scss/, chercher et corriger le style à modifier dans les différents fichiers .scss
  • appliquer la commande :

npm run build:css

La correction sera automatiquement affectée à :

template.css

et

template.min.css

Exemple d'utilisation de npm run build:css pour un nouveau fichier

  • créer un fichier mycustom.scss dans le dossier /scss/ du template
  • ouvrir le fichier build/build-modules-js/compilecss.es6.js
  • vers la ligne 42, on trouve une liste de fichiers à compiler :
files = [
          `${RootPath}/templates/cassiopeia/scss/offline.scss`,
          `${RootPath}/templates/cassiopeia/scss/template.scss`,
          `${RootPath}/templates/cassiopeia/scss/template-rtl.scss`,
            `${RootPath}/templates/cassiopeia/scss/mycustom.scss`,
          `${RootPath}/administrator/templates/atum/scss/bootstrap.scss`,
          `${RootPath}/administrator/templates/atum/scss/fontawesome.scss`,
          `${RootPath}/administrator/templates/atum/scss/template.scss`,
          `${RootPath}/administrator/templates/atum/scss/template-rtl.scss`,
          `${RootPath}/installation/template/scss/template.scss`,
          `${RootPath}/installation/template/scss/template-rtl.scss`,
        ];
  • rajouter l'appel au fichier mycustom.scss ligne 4, comme il est visible sur cette liste
  • après avoir intégré les modifs voulues, appliquer la commande :

npm run build:css

  • deux fichiers nouvellement et automatiquement créés seront alors visibles dans le dossier /css/ du template :

mycustom.css et mycustom.min.css

Exemple d'utilisation de npm run build:js

Si vous avez une proposition d'amélioration de script JS, les scripts à modifier sont en es6.js, ou ecmascript v.6, et se trouvent dans les dossiers :

/build/media_source/

  • modfier le script
  • appliquer la commande :

npm run build:js

Proposer un PR (Pull Request) sur github

Le tuto qui m'a le plus aidée est celui de Valentin Garcia :

How to Contribute to Joomla through Github

Important

Faire attention à choisir la bonne "branch", c'est à dire 4.0-dev avant de "commit".

Choisir la bonne branche

Postez dans Issues si vous avez des commentaires.

Post in Issues if you have comments.

About

Tester Joomla 4 avec Composer et Node/NPM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published