@@ -7,62 +7,138 @@ A powerful CLI tool to automatically scaffold and configure database setup using
77![ NPM Downloads] ( https://img.shields.io/npm/dw/drizzle-setup?logo=npm&color=%23f75352 )
88![ NPM Version] ( https://img.shields.io/npm/v/drizzle-setup?logo=npm&color=%23f75352 )
99
10+ ---
11+
1012## ✨ Features
1113
12- - 📦 ** Zero Config Setup** – Instantly scaffold DB structure and config with minimal input.
13- - 📜 ** Drizzle Scripts** – Automatically updates ` package.json ` with Drizzle CLI scripts.
14- - 🔧 ** .env Auto Update** – Automatically injects required environment variables.
15- - 🧩 ** Multiple DB Support** – Works seamlessly with PostgreSQL,SQLite,MySQL and More setups.
16- - 📁 ** Template Copying** – Instantly sets up a working ` target-folder ` structure.
14+ - 🚀 ** Zero Configuration Setup** – Instantly scaffold database structure and config with minimal input
15+ - 📜 ** Automated Script Generation** – Automatically updates ` package.json ` with essential Drizzle CLI scripts
16+ - 🔐 ** Environment Management** – Automatically injects required environment variables into ` .env `
17+ - 🗃️ ** Multi-Database Support** – Seamlessly works with PostgreSQL, SQLite, MySQL, and other popular databases
18+ - 📁 ** Template System** – Instantly sets up a working project structure with best practices
19+ - 🎯 ** Interactive Setup** – Guided CLI experience with smart defaults
20+ - 📦 ** Dependency Management** – Automatically installs required packages based on your database choice
1721
1822---
1923
2024## 🚀 Quick Start
2125
22- Just run the CLI in your project directory:
26+ Navigate to your project directory and run :
2327
2428``` bash
25- npx drizzle-setup # or
26- bunx drizzle-setup # or
27- pnpm dlx drizzle-setup # or
29+ npx drizzle-setup
2830```
2931
30- You'll be guided through:
32+ The CLI will guide you through an interactive setup process :
3133
32- 1 . ** Choosing your database** (PostgreSQL or SQLite moreover)
33- 2 . ** Selecting a config preset**
34- 3 . ** Specifying a target folder**
35- 4 . ** Copying boilerplate files**
36- 5 . ** Setting up ` drizzle.config.ts ` **
37- 6 . ** Updating ` .env ` and ` package.json ` **
38- 7 . ** Installing dependencies** via your chosen package manager
34+ ### Setup Flow
35+
36+ 1 . ** 🗄️ Database Selection** – Choose from PostgreSQL, SQLite, MySQL, and more
37+ 2 . ** ⚙️ Configuration Preset** – Select from optimized presets for different use cases
38+ 3 . ** 📁 Target Directory** – Specify where to create your database files
39+ 4 . ** 📋 Template Selection** – Choose from various boilerplate templates
40+ 5 . ** 🔧 Config Generation** – Automatically create ` drizzle.config.ts `
41+ 6 . ** 🔐 Environment Setup** – Update ` .env ` with required variables
42+ 7 . ** 📦 Package Management** – Install dependencies via your preferred package manager
43+ 8 . ** ✅ Final Verification** – Ensure everything is set up correctly
3944
4045---
4146
42- ## 🧪 Supported Databases
47+ ## 🗃️ Supported Databases
48+
49+ ### PostgreSQL
50+
51+ - ** Default PostgreSQL** – Standard PostgreSQL setup
52+ - ** Neon** – Serverless PostgreSQL with automatic scaling
53+ - ** Supabase** – Open-source Firebase alternative
54+ - ** Vercel Postgres** – Serverless PostgreSQL by Vercel
55+
56+ ### SQLite
57+
58+ - ** Default SQLite** – Local SQLite database
59+ - ** Turso** – Edge SQLite database
60+ - ** Bun SQLite** – High-performance SQLite with Bun runtime
61+ - ** Cloudflare D1** – Serverless SQLite at the edge
62+
63+ ### MySQL
4364
44- - PostgreSQL - Default, Neon, Vercel Postgres
45- - SQLite - Default, Turso, Bun SQLite
65+ - ** Default MySQL** – Standard MySQL setup
66+ - ** PlanetScale** – Serverless MySQL platform
67+ - ** Railway MySQL** – Cloud MySQL hosting
4668
47- Each database type comes with its own pre-configured templates and ` .env ` variables.
69+ ### Other Databases
70+
71+ - ** MongoDB** – NoSQL document database
72+ - ** Redis** – In-memory data structure store
73+
74+ > Each database type comes with pre-configured templates, optimized settings, and environment variables.
4875
4976---
5077
51- ## 🧱 Directory Structure
78+ ## 🏗️ Project Structure
5279
53- After setup, your project might look like this :
80+ After setup, your project will have a clean, organized structure :
5481
5582```
5683project-root/
57- ├── drizzle.config.ts
58- ├── .env
59- ├── [target-folder]/
60- │ ├── schema.ts
61- │ └── index.ts
84+ ├── node_modules/ # Installed dependencies
85+ ├── drizzle.config.ts # Drizzle configuration
86+ ├── .env # Environment variables
87+ ├── .env.example # Example environment file
88+ ├── package.json # Updated with Drizzle scripts
89+ ├── [target-folder]/ # Your database folder
90+ │ ├── schema.ts # Database schema definitions
91+ │ ├── index.ts # Database connection and exports
6292```
6393
6494---
6595
96+ ## Perfect for Modern Stacks 🏗️
97+
98+ This tool shines especially bright with modern frameworks:
99+
100+ ### 🚀 ** Astro Projects**
101+
102+ ``` bash
103+ # In your Astro project
104+ npx drizzle-setup
105+ # Choose PostgreSQL + Vercel
106+ # Boom! Database ready for your Astro app
107+ ```
108+
109+ ### ⚡ ** Next.js Apps**
110+
111+ ``` bash
112+ # Perfect for Next.js API routes
113+ npx drizzle-setup
114+ # Select your preferred database
115+ # Start building features, not configs
116+ ```
117+
118+ ### 🎯 ** Any JavaScript/TypeScript Project**
119+
120+ Whether it's Express, Fastify, SvelteKit, or any other framework - this CLI has got you covered.
121+
122+ ---
123+
124+ ## Real-World Impact 📈
125+
126+ ** Before Drizzle Setup CLI:**
127+
128+ - ⏰ 2-3 hours of setup time
129+ - 🐛 Configuration errors and typos
130+ - 📚 Constant reference to documentation
131+ - 😫 Frustration and context switching
132+
133+ ** After Drizzle Setup CLI:**
134+
135+ - ⚡ 30 seconds to complete setup
136+ - ✅ Zero configuration errors
137+ - 🎯 Focus on building features
138+ - 😊 Happy developer experience
139+
140+ ---
141+
66142## 📄 License
67143
68- ## MIT License
144+ MIT License © 2025 Drizzle Team
0 commit comments