Projet Next.js avec Shadcn/ui, Neon PostgreSQL et Drizzle ORM.
- Next.js 14+ - Framework React avec App Router
- TypeScript - Typage statique
- Shadcn/ui - Composants UI
- Tailwind CSS - Styling
- Neon - PostgreSQL serverless
- Drizzle ORM - ORM TypeScript
- Node.js 18+
- npm ou yarn
- Compte Neon (pour la base de données)
- Cloner le projet et installer les dépendances :
npm install- Configurer les variables d'environnement :
cp .env.local.example .env.localPuis éditez .env.local et ajoutez votre URL de connexion Neon :
DATABASE_URL=postgresql://user:password@host/database?sslmode=require
- Générer et exécuter les migrations :
npm run db:generate
npm run db:migratenpm run dev- Démarrer le serveur de développementnpm run build- Build de productionnpm run start- Démarrer le serveur de productionnpm run lint- Linter le codenpm run db:generate- Générer les migrations Drizzlenpm run db:migrate- Exécuter les migrationsnpm run db:studio- Ouvrir Drizzle Studio
chatnoir/
├── app/ # App Router (Next.js 14+)
│ ├── layout.tsx
│ ├── page.tsx
│ └── globals.css
├── components/ # Composants React
│ └── ui/ # Composants Shadcn/ui
├── lib/ # Utilitaires et configuration
│ ├── db/ # Configuration Drizzle
│ │ ├── index.ts # Instance Drizzle
│ │ └── schema.ts # Schémas de base de données
│ └── utils.ts # Utilitaires (cn pour Shadcn)
├── public/ # Assets statiques
└── drizzle/ # Migrations générées
Pour ajouter un composant Shadcn/ui :
npx shadcn-ui@latest add [component-name]Par exemple :
npx shadcn-ui@latest add button
npx shadcn-ui@latest add cardLe projet utilise Drizzle ORM avec Neon PostgreSQL. Les schémas sont définis dans lib/db/schema.ts.
Pour créer une nouvelle table, modifiez lib/db/schema.ts, puis :
npm run db:generate
npm run db:migrateLe serveur de développement démarre sur http://localhost:3000.
MIT