@odvi/create-dtt-framework 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
File without changes
|
package/dist/utils/template.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,51 +1,50 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@odvi/create-dtt-framework",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "CLI tool to scaffold new projects with DTT Framework",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"bin": {
|
|
7
|
-
"create-dtt-framework": "./dist/index.js"
|
|
8
|
-
},
|
|
9
|
-
"files": [
|
|
10
|
-
"dist",
|
|
11
|
-
"template"
|
|
12
|
-
],
|
|
13
|
-
"
|
|
14
|
-
"
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
"
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
22
|
-
"inquirer": "^9.
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
},
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
"
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@odvi/create-dtt-framework",
|
|
3
|
+
"version": "0.1.7",
|
|
4
|
+
"description": "CLI tool to scaffold new projects with DTT Framework",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": {
|
|
7
|
+
"create-dtt-framework": "./dist/index.js"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
"dist",
|
|
11
|
+
"template"
|
|
12
|
+
],
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"chalk": "^5.3.0",
|
|
15
|
+
"commander": "^12.1.0",
|
|
16
|
+
"inquirer": "^9.2.23",
|
|
17
|
+
"ora": "^8.1.0",
|
|
18
|
+
"fs-extra": "^11.2.0"
|
|
19
|
+
},
|
|
20
|
+
"devDependencies": {
|
|
21
|
+
"@types/fs-extra": "^11.0.4",
|
|
22
|
+
"@types/inquirer": "^9.0.7",
|
|
23
|
+
"@types/node": "^20.14.10",
|
|
24
|
+
"typescript": "^5.8.2"
|
|
25
|
+
},
|
|
26
|
+
"engines": {
|
|
27
|
+
"node": ">=18.0.0"
|
|
28
|
+
},
|
|
29
|
+
"keywords": [
|
|
30
|
+
"dtt-framework",
|
|
31
|
+
"cli",
|
|
32
|
+
"scaffold",
|
|
33
|
+
"next.js",
|
|
34
|
+
"typescript"
|
|
35
|
+
],
|
|
36
|
+
"license": "MIT",
|
|
37
|
+
"author": "DTT Framework",
|
|
38
|
+
"repository": {
|
|
39
|
+
"type": "git",
|
|
40
|
+
"url": "https://github.com/odvidtt/dtt-framework.git"
|
|
41
|
+
},
|
|
42
|
+
"publishConfig": {
|
|
43
|
+
"access": "public"
|
|
44
|
+
},
|
|
45
|
+
"scripts": {
|
|
46
|
+
"build": "tsc",
|
|
47
|
+
"dev": "tsc --watch",
|
|
48
|
+
"sync-template": "node scripts/sync-template.js"
|
|
49
|
+
}
|
|
50
|
+
}
|
package/template/README.md
CHANGED
|
@@ -2,25 +2,64 @@
|
|
|
2
2
|
|
|
3
3
|
This is a DTT Framework application created with the CLI.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Quick Start
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
### Prerequisites
|
|
8
|
+
|
|
9
|
+
- **Node.js** 20 or higher
|
|
10
|
+
- **pnpm** 10 or higher
|
|
11
|
+
- **Supabase account** ([Sign up](https://supabase.com/))
|
|
12
|
+
- **Clerk account** ([Sign up](https://clerk.com/))
|
|
13
|
+
- **Snowflake account** (optional)
|
|
14
|
+
|
|
15
|
+
### 1. Environment Setup
|
|
16
|
+
|
|
17
|
+
Copy the example environment file and fill in your credentials:
|
|
8
18
|
|
|
9
19
|
```bash
|
|
10
|
-
|
|
20
|
+
cp .env.example .env
|
|
11
21
|
```
|
|
12
22
|
|
|
13
|
-
|
|
23
|
+
Edit `.env` and fill in the required keys for Clerk and Supabase. See [Environment Variables](docs/framework/environment-variables.md) for details.
|
|
24
|
+
|
|
25
|
+
### 2. Database Setup
|
|
26
|
+
|
|
27
|
+
Push the database schema to your Supabase project:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
pnpm db:push
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
This will create the necessary tables, including `health_check_tests` required for the health dashboard.
|
|
34
|
+
|
|
35
|
+
### 3. Deploy Edge Functions
|
|
36
|
+
|
|
37
|
+
The health check system requires a Supabase Edge Function. Deploy it using the Supabase CLI:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Login to Supabase
|
|
41
|
+
npx supabase login
|
|
42
|
+
|
|
43
|
+
# Link your project (get your-project-ref from Supabase dashboard URL)
|
|
44
|
+
npx supabase link --project-ref your-project-ref
|
|
45
|
+
|
|
46
|
+
# Deploy the function
|
|
47
|
+
npx supabase functions deploy health-check
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 4. Start Development Server
|
|
14
51
|
|
|
15
52
|
```bash
|
|
16
53
|
pnpm dev
|
|
17
54
|
```
|
|
18
55
|
|
|
19
|
-
Open [http://localhost:3000](http://localhost:3000) with your browser
|
|
56
|
+
Open [http://localhost:3000](http://localhost:3000) with your browser.
|
|
57
|
+
|
|
58
|
+
### 5. Verify Health
|
|
20
59
|
|
|
21
|
-
|
|
60
|
+
Visit [http://localhost:3000/health](http://localhost:3000/health) to verify all services are connected and working.
|
|
22
61
|
|
|
23
|
-
|
|
62
|
+
---
|
|
24
63
|
|
|
25
64
|
## Documentation
|
|
26
65
|
|
|
@@ -28,3 +67,114 @@ To learn more about DTT Framework, visit the [documentation](./docs/framework/01
|
|
|
28
67
|
- [Tech Stack](./docs/framework/02-techstack.md)
|
|
29
68
|
- [Environment Variables](./docs/framework/environment-variables.md)
|
|
30
69
|
- [CLI Installation](./docs/framework/cli-installation.md)
|
|
70
|
+
- [Health Check System](./docs/framework/health-check-system.md)
|
|
71
|
+
- [Clerk Authentication](./docs/framework/clerk-authentication.md)
|
|
72
|
+
- [Supabase Integration](./docs/framework/supabase-integration.md)
|
|
73
|
+
- [Snowflake Integration](./docs/framework/snowflake-integration.md)
|
|
74
|
+
|
|
75
|
+
## Key Features
|
|
76
|
+
|
|
77
|
+
### 1. Authentication & User Management
|
|
78
|
+
- **Clerk Integration**: Complete authentication solution with sign-in, sign-up, and user management
|
|
79
|
+
- **Organization Support**: Multi-tenant architecture with organization memberships
|
|
80
|
+
- **Webhook Synchronization**: Automatic user data sync to local database
|
|
81
|
+
- **Protected Routes**: Middleware-based route protection
|
|
82
|
+
|
|
83
|
+
### 2. Database Layer
|
|
84
|
+
- **PostgreSQL**: Robust relational database via Supabase
|
|
85
|
+
- **Drizzle ORM**: Type-safe database queries with excellent TypeScript support
|
|
86
|
+
- **Connection Pooling**: Optimized for Supabase Transaction mode
|
|
87
|
+
- **Schema Management**: Migration-based schema evolution
|
|
88
|
+
|
|
89
|
+
### 3. Storage & Edge Computing
|
|
90
|
+
- **Supabase Storage**: File upload/download with signed URLs
|
|
91
|
+
- **Edge Functions**: Serverless compute with auth header passthrough
|
|
92
|
+
- **Bucket Management**: Organized file storage structure
|
|
93
|
+
|
|
94
|
+
### 4. Data Warehouse
|
|
95
|
+
- **Snowflake Integration**: Direct connection to Snowflake data warehouse
|
|
96
|
+
- **Query Execution**: Execute SQL queries from the application
|
|
97
|
+
- **Warehouse Configuration**: Support for multiple warehouses and databases
|
|
98
|
+
|
|
99
|
+
### 5. API Layer
|
|
100
|
+
- **Hono Framework**: Lightweight and fast API framework
|
|
101
|
+
- **Middleware Support**: Authentication, logging, CORS
|
|
102
|
+
- **Route Organization**: Modular route structure
|
|
103
|
+
- **Type Safety**: Full TypeScript support with inferred types
|
|
104
|
+
|
|
105
|
+
### 6. State Management
|
|
106
|
+
- **TanStack Query**: Server state management with caching and synchronization
|
|
107
|
+
- **Zustand**: Lightweight client state management
|
|
108
|
+
- **React Hooks**: Custom hooks for common patterns
|
|
109
|
+
|
|
110
|
+
### 7. Health Check System
|
|
111
|
+
- **Comprehensive Monitoring**: Health checks for all integrated services
|
|
112
|
+
- **Dashboard UI**: Visual health status display
|
|
113
|
+
- **Response Time Tracking**: Performance monitoring
|
|
114
|
+
- **Error Reporting**: Detailed error messages and status codes
|
|
115
|
+
|
|
116
|
+
### 8. Developer Experience
|
|
117
|
+
- **TypeScript**: Full type safety across the stack
|
|
118
|
+
- **Tailwind CSS**: Utility-first styling
|
|
119
|
+
- **Shadcn/ui**: Beautiful, accessible UI components
|
|
120
|
+
- **Hot Reload**: Fast development with Next.js Turbo
|
|
121
|
+
- **Linting & Formatting**: ESLint and Prettier configured
|
|
122
|
+
|
|
123
|
+
## Folder Structure
|
|
124
|
+
|
|
125
|
+
```
|
|
126
|
+
dtt-framework/
|
|
127
|
+
├── docs/ # Framework documentation
|
|
128
|
+
├── public/ # Static assets
|
|
129
|
+
├── src/ # Source code
|
|
130
|
+
│ ├── app/ # Next.js App Router
|
|
131
|
+
│ ├── components/ # React components
|
|
132
|
+
│ ├── features/ # Feature modules
|
|
133
|
+
│ ├── hooks/ # React hooks
|
|
134
|
+
│ ├── lib/ # Utility libraries and clients
|
|
135
|
+
│ ├── server/ # Server-side code (API, database)
|
|
136
|
+
│ ├── stores/ # Zustand state stores
|
|
137
|
+
│ ├── types/ # TypeScript types
|
|
138
|
+
│ ├── config/ # Configuration files
|
|
139
|
+
│ ├── env.js # Environment variables
|
|
140
|
+
│ ├── middleware.ts # Next.js middleware
|
|
141
|
+
│ └── styles/ # Styles
|
|
142
|
+
├── .env.example # Environment variables template
|
|
143
|
+
├── drizzle.config.ts # Drizzle ORM configuration
|
|
144
|
+
├── next.config.js # Next.js configuration
|
|
145
|
+
├── package.json # Dependencies and scripts
|
|
146
|
+
└── README.md # This file
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
## Development
|
|
150
|
+
|
|
151
|
+
### Available Scripts
|
|
152
|
+
|
|
153
|
+
| Script | Description |
|
|
154
|
+
|--------|-------------|
|
|
155
|
+
| `pnpm dev` | Start development server with Turbo |
|
|
156
|
+
| `pnpm build` | Build for production |
|
|
157
|
+
| `pnpm start` | Start production server |
|
|
158
|
+
| `pnpm lint` | Run ESLint |
|
|
159
|
+
| `pnpm format:write` | Format code with Prettier |
|
|
160
|
+
| `pnpm typecheck` | Run TypeScript type checking |
|
|
161
|
+
| `pnpm db:generate` | Generate database migrations |
|
|
162
|
+
| `pnpm db:migrate` | Apply database migrations |
|
|
163
|
+
| `pnpm db:push` | Push schema changes to database |
|
|
164
|
+
| `pnpm db:studio` | Open Drizzle Studio |
|
|
165
|
+
|
|
166
|
+
## Deployment
|
|
167
|
+
|
|
168
|
+
For deployment instructions, please refer to the [Deployment Guide](docs/framework/deployment/vercel.md).
|
|
169
|
+
|
|
170
|
+
## Support
|
|
171
|
+
|
|
172
|
+
If you need help:
|
|
173
|
+
|
|
174
|
+
1. **Check the documentation** in `docs/` folder
|
|
175
|
+
2. **Check the health dashboard** at `/health`
|
|
176
|
+
3. **Open an issue** on GitHub
|
|
177
|
+
|
|
178
|
+
## License
|
|
179
|
+
|
|
180
|
+
MIT
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
v2.67.1
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
// Follow this setup guide to deploy the function:
|
|
2
|
+
// https://supabase.com/docs/guides/functions/deploy
|
|
3
|
+
|
|
4
|
+
import { serve } from "https://deno.land/std@0.168.0/http/server.ts"
|
|
5
|
+
|
|
6
|
+
const corsHeaders = {
|
|
7
|
+
'Access-Control-Allow-Origin': '*',
|
|
8
|
+
'Access-Control-Allow-Headers': 'authorization, x-client-info, apikey, content-type',
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
serve(async (req) => {
|
|
12
|
+
if (req.method === 'OPTIONS') {
|
|
13
|
+
return new Response('ok', { headers: corsHeaders })
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
try {
|
|
17
|
+
const { message } = await req.json()
|
|
18
|
+
let authHeader = req.headers.get('Authorization')
|
|
19
|
+
const testAuthHeader = req.headers.get('x-test-auth')
|
|
20
|
+
|
|
21
|
+
// Handle ping check
|
|
22
|
+
if (message === 'ping') {
|
|
23
|
+
return new Response(
|
|
24
|
+
JSON.stringify({
|
|
25
|
+
message: 'pong',
|
|
26
|
+
timestamp: new Date().toISOString(),
|
|
27
|
+
}),
|
|
28
|
+
{
|
|
29
|
+
headers: { ...corsHeaders, 'Content-Type': 'application/json' },
|
|
30
|
+
status: 200,
|
|
31
|
+
},
|
|
32
|
+
)
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Handle auth check
|
|
36
|
+
if (message === 'auth-check') {
|
|
37
|
+
// Prioritize test header if present (allows testing without bypassing Supabase Gateway auth)
|
|
38
|
+
if (testAuthHeader) {
|
|
39
|
+
authHeader = testAuthHeader
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
if (!authHeader) {
|
|
43
|
+
return new Response(
|
|
44
|
+
JSON.stringify({ error: 'No authorization header provided' }),
|
|
45
|
+
{
|
|
46
|
+
headers: { ...corsHeaders, 'Content-Type': 'application/json' },
|
|
47
|
+
status: 401,
|
|
48
|
+
},
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return new Response(
|
|
53
|
+
JSON.stringify({
|
|
54
|
+
message: 'Auth header received',
|
|
55
|
+
hasAuth: true,
|
|
56
|
+
// Don't log/return the full token in production for security
|
|
57
|
+
tokenPrefix: authHeader.substring(0, 10) + '...',
|
|
58
|
+
source: testAuthHeader ? 'x-test-auth' : 'Authorization'
|
|
59
|
+
}),
|
|
60
|
+
{
|
|
61
|
+
headers: { ...corsHeaders, 'Content-Type': 'application/json' },
|
|
62
|
+
status: 200,
|
|
63
|
+
},
|
|
64
|
+
)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return new Response(
|
|
68
|
+
JSON.stringify({ error: 'Unknown message type' }),
|
|
69
|
+
{
|
|
70
|
+
headers: { ...corsHeaders, 'Content-Type': 'application/json' },
|
|
71
|
+
status: 400,
|
|
72
|
+
},
|
|
73
|
+
)
|
|
74
|
+
} catch (error) {
|
|
75
|
+
return new Response(
|
|
76
|
+
JSON.stringify({ error: error.message }),
|
|
77
|
+
{
|
|
78
|
+
headers: { ...corsHeaders, 'Content-Type': 'application/json' },
|
|
79
|
+
status: 400,
|
|
80
|
+
},
|
|
81
|
+
)
|
|
82
|
+
}
|
|
83
|
+
})
|
|
84
|
+
|