feat: SEO complet + analytics Umami + og:image § logo
ci/woodpecker/push/woodpecker Pipeline was successful

SEO :
- composable useSeoPage() : og:*, Twitter Cards, canonical sur toutes les pages (15 pages)
- app.vue : JSON-LD Organization + Book, og:image global og-default.png
- og-default.png 1200×630 : logo § calligraphique + texte (Pillow)
- nuxt.config.ts : @nuxtjs/sitemap avec 26 URLs statiques

Analytics Umami :
- useTracking() : helpers typés audio/pdf/player/scroll/cta
- useScrollTracking() : scroll depth 25/50/75/100% + liens externes auto
- useAudioPlayer : trackAudioPlay/Progress/Complete
- BookPdfReader : trackPdfOpen/Close avec durée
- BookPlayer : trackPlayerOpen/Chapter/Mode
- docker-compose : variables NUXT_PUBLIC_UMAMI_* passées au container

Images :
- Couv-Economie-du-don.jpg ajoutée dans public/images/
- bookplayer.config.yml + home.yml : références mises à jour

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Yvv
2026-04-11 00:25:28 +02:00
parent dcf64cc924
commit 8408fd6466
35 changed files with 723 additions and 44 deletions
+40
View File
@@ -14,8 +14,48 @@ export default defineNuxtConfig({
'@unocss/nuxt',
'@vueuse/nuxt',
'@nuxt/image',
'@nuxtjs/sitemap',
],
site: {
url: 'https://librodrome.org',
name: 'Le Librodrome',
},
sitemap: {
strictNuxtContentPaths: false,
sources: ['/api/__sitemap__/urls'],
urls: [
{ loc: '/', changefreq: 'weekly', priority: 1.0 },
{ loc: '/economique', changefreq: 'monthly', priority: 0.9 },
{ loc: '/economique/modele-eco', changefreq: 'monthly', priority: 0.9 },
{ loc: '/economique/monnaie-libre', changefreq: 'monthly', priority: 0.8 },
{ loc: '/economique/productions-collectives', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/commande', changefreq: 'monthly', priority: 0.8 },
{ loc: '/numerique', changefreq: 'monthly', priority: 0.8 },
{ loc: '/numerique/logiciel-libre', changefreq: 'monthly', priority: 0.8 },
{ loc: '/numerique/authentification-wot', changefreq: 'monthly', priority: 0.7 },
{ loc: '/numerique/cloud-libre', changefreq: 'monthly', priority: 0.7 },
{ loc: '/citoyenne', changefreq: 'monthly', priority: 0.8 },
{ loc: '/citoyenne/decision', changefreq: 'monthly', priority: 0.8 },
{ loc: '/citoyenne/tarifs-eau', changefreq: 'monthly', priority: 0.7 },
{ loc: '/en-musique', changefreq: 'monthly', priority: 0.8 },
{ loc: '/a-propos', changefreq: 'yearly', priority: 0.5 },
// Chapitres modele-eco
{ loc: '/economique/modele-eco/01-introduction', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/02-don', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/03-mesure', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/04-monnaie', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/05-trm', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/06-produire', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/07-echanger', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/08-institution', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/09-greffes', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/10-maintenant', changefreq: 'monthly', priority: 0.7 },
{ loc: '/economique/modele-eco/11-annexes', changefreq: 'monthly', priority: 0.6 },
],
},
unocss: {
safelist: [
// Axis block icons (dynamic from YAML)