尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Application web (PWA) qui imagine, compare et organise un voyage de A à Z : propositions de destinations sur mesure, plan complet (transport, logement, programme jour par jour), budget, ticket souvenir et carte postale à partager.
Démo : 100 % statique — aucun serveur applicatif requis, aucune inscription payante, aucun abonnement. Les données restent dans le navigateur (localStorage) ; un compte local avec vérification par email fait office de démonstration d'authentification.
node outils/verifie.js
Le projet n'a ni compilation ni test : une erreur ne se voit qu'en ouvrant le site, et certaines ne se voient pas du tout. Trois pannes réelles, toutes silencieuses :
| Panne | Ce qu'on voit | Détectée par |
|---|---|---|
un const déclaré deux fois | page blanche — tout app.js meurt | contrôle 1 |
une accolade manquante dans style.css | toutes les règles suivantes ignorées, sans message | contrôle 2 |
| deux déclarations du même sélecteur | la moitié des propriétés annulée en silence | contrôle 6 |
Le script contrôle aussi les identifiants HTML en double (un bouton qui ne fait rien), la présence d'une clé d'API oubliée (le dépôt est public), et rappelle la version du cache — l'oublier est le défaut le plus coûteux du projet : les visiteurs gardent l'ancienne version et aucun changement n'est visible.
Il tourne aussi tout seul à chaque envoi, via .github/workflows/verifie.yml.
Aucune dépendance, aucun npm install, gratuit sur un dépôt public.
⚠️ Il ne remplace pas un passage dans le navigateur. Il ne voit ni un contraste trop faible, ni un texte qui déborde, ni une cible trop petite au doigt. Il attrape ce qu'un humain ne peut pas voir, pas l'inverse.
Aucune compilation. Sers le dossier tel quel :
npx serve . # http://localhost:3000 (lit serve.json pour les en-têtes)
# ou
python -m http.server 8080
config.js)Deux modes (voir les commentaires du fichier) :
| Mode | Comment | Risque |
|---|---|---|
| Sécurisé (recommandé, actif par défaut) | proxy pointe vers un backend (Val Town / Cloudflare Worker — voir worker.js) qui détient les clés Gemini/Groq côté serveur | Aucune clé exposée |
| Test local | coller ses clés gemini/groq directement | Clés lisibles par quiconque ouvre F12 — à réserver au local |
emailjs (envoi du code de vérification) utilise une clé publique par
conception. Sans configuration, l'app bascule en mode démo : le code
s'affiche à l'écran.
Compatible GitHub Pages, Netlify, Cloudflare Pages, etc. — tout est relatif
(start_url: "./"), HTTPS requis pour la PWA.
_headers règle le cache
(HTML/JS/CSS revalidés, icônes en cache long).CACHE dans sw.js à chaque déploiement).index.html interface (une seule page, 3 onglets : Carte / Voyage / Profil)
app.js logique + routeur IA (Gemini heavy · Groq light) + données réelles
style.css design néo-brutaliste, thèmes clair/sombre
config.js clés / proxy (voir ci-dessus)
worker.js backend optionnel (Cloudflare Worker / Val Town)
sw.js service worker (hors-ligne)
manifest.json PWA
serve.json en-têtes en dev (npx serve) · _headers : en production