尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Landing page B2B haute conversion pour Priimo, logiciel de prospection immobilière prédictive. Objectif unique : générer des inscriptions à la bêta privée.
next/font/google (Inter, weights 400–700)next/script après hydration (causio.fr)npm install
npm run dev
Ouvrir http://localhost:3000.
| Commande | Effet |
|---|---|
npm run dev | Serveur de développement (HMR) |
npm run build | Build production (.next/) |
npm run start | Sert le build production sur localhost:3000 |
npm run lint | ESLint (config Next.js) |
npm run typecheck | Vérification TypeScript stricte sans emit |
Toutes optionnelles — voir .env.example.
| Variable | Rôle |
|---|---|
NEXT_PUBLIC_SITE_URL | URL publique (canonical, OG, sitemap). Ex : https://priimo.fr |
BETA_WEBHOOK_URL | Webhook appelé par /api/beta à chaque inscription (Slack, Discord, Make.com, n8n…) |
BETA_BLOB_STORE | Mettre à 1 pour enregistrer un fichier JSON par inscription sur Vercel Blob (trace dans le dashboard, sans base SQL). Nécessite un store Blob lié au projet et BLOB_READ_WRITE_TOKEN (injecté par Vercel en prod ; en local, copie depuis le dashboard). Les fichiers ont une URL « publique » techniquement mais un chemin non devinable (beta-signups/…) : traitez-les comme des données personnelles. |
En local, copiez .env.example vers .env.local. Sur Vercel, ajoutez-les
dans Project → Settings → Environment Variables.
vercel.json
force le preset Next.js si la détection automatique échoue.*.vercel.app est générée immédiatement.priimo.fr
et suivez les instructions DNS.Votre package.json contient bien "next" dans dependencies.
Si Vercel affiche quand même cette erreur, c’est presque toujours l’un des cas suivants :
| Cause | Que faire |
|---|---|
| Root Directory incorrect | Dans Vercel : Project → Settings → General → Root Directory doit être le dossier qui contient package.json et next.config.js. Laissez vide si le repo Git = la racine du projet. Si votre app est dans un sous-dossier (ex. apps/web), mettez ce chemin exact. |
package.json absent du dépôt | Vérifiez que package.json et package-lock.json sont bien commités et poussés (git status ne doit pas les lister comme ignorés). |
| Repo parent | Si le dépôt Git contient plusieurs projets, le répertoire racine Git n’a peut‑être pas de package.json — configurez Root Directory vers le bon sous-dossier. |
Après correction : Redeploy (Deployments → … → Redeploy).
app/
api/
beta/route.ts # Endpoint d'inscription (POST), validation server-side
globals.css # Tailwind + utilitaires (boutons, reveal, animations)
layout.tsx # Fonts, metadata SEO, viewport, provider modal, widget Causio
page.tsx # Assemble toutes les sections dans l'ordre
robots.ts # /robots.txt généré (App Router)
sitemap.ts # /sitemap.xml généré (App Router)
components/
Header.tsx # Header fixe transparent, blur au scroll
HeroSection.tsx # Hero + form inline + visuel
HeroBackground.tsx # Fond animé réactif souris
BetaForm.tsx # Formulaire (POST /api/beta + validation)
BetaModal.tsx # Modale globale (mêmes champs que le form inline)
BetaModalContext.tsx # Provider + hook useBetaModal()
CtaButton.tsx # Bouton CTA réutilisable
Reveal.tsx # Wrapper IntersectionObserver
FAQ.tsx # Accordéon FAQ
FinalCTA.tsx # CTA final + footer fusionnés
onBlur + à la soumission.POST /api/beta (JSON) avec { prenom, email, telephone, nomAgence }.BETA_BLOB_STORE=1), forwarding optionnel vers BETA_WEBHOOK_URL.200 { ok: true } → état succès inline ; 400 { fields } → erreurs
par champ ; 5xx → message d'erreur générique non bloquant.Pour brancher un vrai backend (CRM, base de données…) : éditez
app/api/beta/route.ts à la place de console.log /
Blob / webhook.
htmlFor/id, aria-invalid, aria-describedby sur les champs.aria-expanded sur la FAQ, fermeture modale Escape + clic backdrop.prefers-reduced-motion respecté (animations désactivées).| Donnée | Endroit |
|---|---|
| Couleur d'accentuation | tailwind.config.ts → colors.accent |
| Compteur "47 agences" | recherche globale 47 agences |
| Questions FAQ | components/FAQ.tsx (FAQS) |
| Widget chat Causio | app/layout.tsx → CAUSIO_CONFIG.chatbotId + URL widget.js |