haiku-atelier-2024/justfile
2024-10-23 16:24:30 +02:00

91 lines
No EOL
3 KiB
Makefile

set shell := ["fish", "-c"]
cacheFolder := ".cache"
eslintCacheFile := "eslintcache"
prettierCacheFile := "prettiercache"
stylelintCacheFile := "stylelintcache"
# Liste toutes les recettes
list:
@just --list --list-heading 'Recettes disponibles :'\n'' --unsorted
# Démarre le conteneur ddev
start:
ddev start
# Arrête le conteneur ddev
stop:
ddev stop
# Met à jour les dépendances composer et npm
update:
composer update
pnpm update --latest
# Formatte avec Prettier et dprint
format:
@echo "Formatage de l'ensemble du code avec Prettier et dprint."
pnpm prettier \
--cache \
--cache-location "{{ cacheFolder }}/{{ prettierCacheFile }}" \
--ignore-unknown \
--write \
.
dprint fmt
# Compile, minifie et optimise Sass vers CSS
build-css:
pnpm sass \
--update \
"web/app/themes/haiku-atelier-2024/src/sass":"web/app/themes/haiku-atelier-2024/assets/css"
pnpm lightningcss \
--bundle \
--sourcemap \
--output-file "web/app/themes/haiku-atelier-2024/assets/css/main.min.css" \
-- "web/app/themes/haiku-atelier-2024/assets/css/main.css"
pnpm lightningcss \
--bundle \
--sourcemap \
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-panier.min.css" \
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-panier.css"
pnpm lightningcss \
--bundle \
--sourcemap \
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-accueil.min.css" \
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-accueil.css"
pnpm lightningcss \
--bundle \
--sourcemap \
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-boutique.min.css" \
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-boutique.css"
pnpm lightningcss \
--bundle \
--sourcemap \
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-a-propos.min.css" \
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-a-propos.css"
pnpm lightningcss \
--bundle \
--sourcemap \
--output-file "web/app/themes/haiku-atelier-2024/assets/css/pages/page-contact.min.css" \
-- "web/app/themes/haiku-atelier-2024/assets/css/pages/page-contact.css"
# Compile le CSS à chaque changement de fichier
watch-css:
pnpm sass \
--update \
--watch \
"web/app/themes/haiku-atelier-2024/src/sass":"web/app/themes/haiku-atelier-2024/assets/css"
# Compile TypeScript en JavaScript
build-js:
pnpm vite build
# Compile TypeScript à chaque changement de fichier
watch-js:
watchexec -w "web/app/themes/haiku-atelier-2024/src/scripts" just build-js
# Vérifie le code TypeScript avec des analyseurs statiques
lint-js:
-pnpm eslint "web/app/themes/haiku-atelier-2024/src/scripts"
-pnpm biome check --reporter=summary "web/app/themes/haiku-atelier-2024/src/scripts"
-pnpm oxlint "web/app/themes/haiku-atelier-2024/src/scripts"