Start here

Arrows to move, enter to open, escape to close.

Ship/Now

Pour commencer · 2 min

Installation

Du clone à l'application qui tourne. Quatre commandes, une dizaine de minutes, surtout de l'attente côté Supabase.

Cloner

Utilisez le nom de dépôt de votre choix. Le kit est à vous, renommez-le : chaque référence à ShipNow dans votre historique git est une référence au produit de quelqu'un d'autre.

git clone git@github.com:Seifbejaoui/shipnow-kit.git mon-produit
cd mon-produit
rm -rf .git && git init
npm install

Nommer

npm run setup

Le script demande un nom de produit et un domaine, les écrit dans src/config.ts, et copie .env.example vers .env si vous n'en avez pas. Il ne touche à rien d'autre. Lisez le diff.

Créer la base

Créez d'abord un projet Supabase, puis mettez son URL et ses clés dans .env. Il vous faut trois valeurs depuis Project settings, API :

NEXT_PUBLIC_SUPABASE_URL=https://<ref>.supabase.co
NEXT_PUBLIC_SUPABASE_KEY=sb_publishable_...
SUPABASE_SECRET_KEY=sb_secret_...

Puis appliquez le schéma. Cela demande un token personnel depuis supabase.com/dashboard/account/tokens, qui n'est pas la même chose que les clés du projet ci-dessus :

SUPABASE_ACCESS_TOKEN=sbp_... npm run db:push

Le script crée chaque table, policy et trigger de supabase/schema.sql, puis les relit pour vérifier. Le schéma est écrit pour être rejoué : chaque create est en if not exists et chaque policy est supprimée avant d'être créée. Relancez-le à chaque fois que vous ajoutez une table.

Lancer

npm run dev

http://localhost:3000. Connectez-vous avec votre propre adresse. Le lien magique est affiché dans le tableau de bord Supabase sous Authentication, Logs tant que Resend n'est pas branché, donc vous n'avez pas besoin d'e-mail fonctionnel pour tester le parcours.

Ce qui vient de se passer

CommandeCe qu'elle a touché
npm run setupsrc/config.ts, .env
npm run db:pushLe schéma de votre projet Supabase
npm run devRien. Compile les messages, puis sert

npm run dev lance npm run paraglide avant de démarrer. Si vous modifiez messages/fr.json, les messages compilés sont régénérés au prochain démarrage, pas à l'enregistrement. Cela surprend tout le monde une fois.

Ensuite

Configuration est le fichier unique à modifier pour que ce soit votre produit.

Une erreur ou un manque sur cette page ? Dites-le-nous.