swallowkit 0.1.0-beta.1 โ†’ 0.1.0-beta.2

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.
Files changed (35) hide show
  1. package/README.md +176 -7
  2. package/dist/cli/commands/dev.d.ts.map +1 -1
  3. package/dist/cli/commands/dev.js +146 -47
  4. package/dist/cli/commands/dev.js.map +1 -1
  5. package/dist/cli/commands/index.d.ts +1 -0
  6. package/dist/cli/commands/index.d.ts.map +1 -1
  7. package/dist/cli/commands/index.js +3 -1
  8. package/dist/cli/commands/index.js.map +1 -1
  9. package/dist/cli/commands/init.d.ts +1 -0
  10. package/dist/cli/commands/init.d.ts.map +1 -1
  11. package/dist/cli/commands/init.js +93 -123
  12. package/dist/cli/commands/init.js.map +1 -1
  13. package/dist/cli/commands/scaffold.d.ts +13 -0
  14. package/dist/cli/commands/scaffold.d.ts.map +1 -0
  15. package/dist/cli/commands/scaffold.js +319 -0
  16. package/dist/cli/commands/scaffold.js.map +1 -0
  17. package/dist/cli/index.js +23 -7
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/core/scaffold/functions-generator.d.ts +10 -0
  20. package/dist/core/scaffold/functions-generator.d.ts.map +1 -0
  21. package/dist/core/scaffold/functions-generator.js +370 -0
  22. package/dist/core/scaffold/functions-generator.js.map +1 -0
  23. package/dist/core/scaffold/model-parser.d.ts +36 -0
  24. package/dist/core/scaffold/model-parser.d.ts.map +1 -0
  25. package/dist/core/scaffold/model-parser.js +319 -0
  26. package/dist/core/scaffold/model-parser.js.map +1 -0
  27. package/dist/core/scaffold/nextjs-generator.d.ts +13 -0
  28. package/dist/core/scaffold/nextjs-generator.d.ts.map +1 -0
  29. package/dist/core/scaffold/nextjs-generator.js +275 -0
  30. package/dist/core/scaffold/nextjs-generator.js.map +1 -0
  31. package/dist/core/scaffold/ui-generator.d.ts +26 -0
  32. package/dist/core/scaffold/ui-generator.d.ts.map +1 -0
  33. package/dist/core/scaffold/ui-generator.js +711 -0
  34. package/dist/core/scaffold/ui-generator.js.map +1 -0
  35. package/package.json +3 -1
package/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # SwallowKit
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/swallowkit.svg)](https://www.npmjs.com/package/swallowkit)
4
+ [![npm downloads](https://img.shields.io/npm/dm/swallowkit.svg)](https://www.npmjs.com/package/swallowkit)
5
+ [![license](https://img.shields.io/npm/l/swallowkit.svg)](./LICENSE)
6
+
3
7
  A type-safe, schema-driven development toolkit for Next.js applications on Azure, featuring seamless Zod schema sharing between frontend, backend, and Cosmos DB.
4
8
 
5
9
  SwallowKit enables developers to build full-stack Next.js applications with external Azure Functions backends while maintaining end-to-end type safety through shared Zod schemas. Deploy your Next.js app to Azure Static Web Apps using standalone mode, and connect to independent Azure Functions for backend operationsโ€”all with consistent type definitions and validation.
@@ -9,6 +13,7 @@ SwallowKit enables developers to build full-stack Next.js applications with exte
9
13
  ## ๐Ÿš€ Features
10
14
 
11
15
  - **Zod Schema Sharing**: Share type-safe schemas across frontend, backend, and database layers
16
+ - **CRUD Code Generation**: Automatically generate Azure Functions and Next.js BFF code from Zod schemas
12
17
  - **Type-Safe Cosmos DB**: Built-in Cosmos DB integration with automatic validation
13
18
  - **Next.js Standalone Deployment**: Deploy to Azure Static Web Apps with standalone mode
14
19
  - **External Backend Support**: Connect to independent Azure Functions backends
@@ -17,7 +22,12 @@ SwallowKit enables developers to build full-stack Next.js applications with exte
17
22
  - **Azure Optimized**: Designed specifically for Azure Static Web Apps + Azure Functions + Cosmos DB
18
23
  - **Developer Experience**: Simple CLI commands for development and deployment
19
24
 
20
- ## ๐Ÿ“‹ Prerequisites
25
+ ## ๏ฟฝ Documentation
26
+
27
+ - **[Scaffold Guide](./docs/scaffold-guide.md)** - Generate CRUD operations from Zod schemas
28
+ - **[Zod Schema Sharing Guide](./docs/zod-schema-sharing-guide.md)** - Share schemas between Next.js and Azure Functions
29
+
30
+ ## ๏ฟฝ๐Ÿ“‹ Prerequisites
21
31
 
22
32
  - Node.js 22.x
23
33
  - Azure Cosmos DB Emulator (for local development)
@@ -98,7 +108,19 @@ npx swallowkit dev --open
98
108
  npx swallowkit dev --verbose
99
109
  ```
100
110
 
101
- ### 4. Project Structure
111
+ ### 4. Generate CRUD Operations from Zod Schemas
112
+
113
+ Use the `scaffold` command to automatically generate complete CRUD operations:
114
+
115
+ ```bash
116
+ npx swallowkit scaffold lib/models/product.ts
117
+ ```
118
+
119
+ This generates Azure Functions, Next.js API routes, and type-safe UI components from your Zod schema.
120
+
121
+ ๐Ÿ“š **See the [Scaffold Guide](./docs/scaffold-guide.md) for detailed instructions and examples.**
122
+
123
+ ### 5. Project Structure
102
124
 
103
125
  ```
104
126
  my-app/
@@ -122,8 +144,7 @@ my-app/
122
144
  โ”‚ โ””โ”€โ”€ todos.ts # Todo CRUD operations
123
145
  โ”œโ”€โ”€ functions/ # Azure Functions Project
124
146
  โ”‚ โ”œโ”€โ”€ src/
125
- โ”‚ โ”‚ โ””โ”€โ”€ functions/
126
- โ”‚ โ”‚ โ””โ”€โ”€ greet.ts # Example HTTP trigger
147
+ โ”‚ โ”‚ โ””โ”€โ”€ greet.ts # Example HTTP trigger
127
148
  โ”‚ โ”œโ”€โ”€ host.json
128
149
  โ”‚ โ”œโ”€โ”€ local.settings.json
129
150
  โ”‚ โ””โ”€โ”€ package.json
@@ -272,6 +293,10 @@ export function AddTodoForm() {
272
293
  # Start Next.js + Azure Functions + Cosmos DB with one command
273
294
  npx swallowkit dev
274
295
 
296
+ # Generate CRUD operations for your models
297
+ npx swallowkit scaffold product
298
+ npx swallowkit scaffold order
299
+
275
300
  # Build for production
276
301
  npx swallowkit build
277
302
 
@@ -279,6 +304,39 @@ npx swallowkit build
279
304
  npx swallowkit deploy --swa-name my-app --resource-group my-rg
280
305
  ```
281
306
 
307
+ ### 9. Rapid CRUD Development with Scaffold
308
+
309
+ SwallowKit can automatically generate all CRUD code for your models:
310
+
311
+ ```bash
312
+ # 1. Create a Zod model
313
+ # lib/models/product.ts
314
+ import { z } from 'zod';
315
+
316
+ export const productSchema = z.object({
317
+ id: z.string(),
318
+ name: z.string().min(1),
319
+ price: z.number().positive(),
320
+ });
321
+
322
+ # 2. Generate CRUD operations
323
+ npx swallowkit scaffold product
324
+
325
+ # 3. Done! You now have:
326
+ # - Azure Functions with Cosmos DB bindings
327
+ # - Next.js BFF API routes
328
+ # - Full type safety with Zod validation
329
+ ```
330
+
331
+ The generated code includes:
332
+ - โœ… List all items (`GET /api/product`)
333
+ - โœ… Get item by ID (`GET /api/product/{id}`)
334
+ - โœ… Create item (`POST /api/product`)
335
+ - โœ… Update item (`PUT /api/product/{id}`)
336
+ - โœ… Delete item (`DELETE /api/product/{id}`)
337
+
338
+ All with Azure best practices, Cosmos DB bindings, and Zod validation!
339
+
282
340
  ## ๐Ÿ—๏ธ Architecture
283
341
 
284
342
  ```
@@ -618,6 +676,79 @@ Install required tools (Azure CLI, SWA CLI, Cosmos DB Emulator).
618
676
  npx swallowkit setup
619
677
  ```
620
678
 
679
+ ### `swallowkit scaffold <model>`
680
+
681
+ Generate CRUD operations (Create, Read, Update, Delete, List) for a Zod model.
682
+
683
+ This command reads a Zod schema file and automatically generates:
684
+ - Azure Functions with Cosmos DB bindings for all CRUD operations
685
+ - Next.js BFF API routes that call the Azure Functions
686
+ - Type-safe code using your shared Zod schema
687
+
688
+ ```bash
689
+ # Generate CRUD for a model file
690
+ npx swallowkit scaffold todo
691
+
692
+ # Or specify the full path
693
+ npx swallowkit scaffold lib/models/todo.ts
694
+ ```
695
+
696
+ **Options:**
697
+ - `--functions-dir <dir>`: Azure Functions directory (default: `functions`)
698
+ - `--api-dir <dir>`: Next.js API routes directory (default: `app/api`)
699
+
700
+ **Example:**
701
+
702
+ 1. Create a Zod model file:
703
+
704
+ ```typescript
705
+ // lib/models/product.ts
706
+ import { z } from 'zod';
707
+
708
+ export const productSchema = z.object({
709
+ id: z.string(),
710
+ name: z.string().min(1).max(100),
711
+ price: z.number().positive(),
712
+ description: z.string().optional(),
713
+ inStock: z.boolean().default(true),
714
+ createdAt: z.string().default(() => new Date().toISOString()),
715
+ });
716
+
717
+ export type ProductType = z.infer<typeof productSchema>;
718
+ ```
719
+
720
+ 2. Generate CRUD operations:
721
+
722
+ ```bash
723
+ npx swallowkit scaffold product
724
+ ```
725
+
726
+ 3. This creates:
727
+ - `functions/src/functions/product.ts` - Azure Functions (GET, POST, PUT, DELETE)
728
+ - `app/api/product/route.ts` - Next.js BFF (GET all, POST)
729
+ - `app/api/product/[id]/route.ts` - Next.js BFF (GET by ID, PUT, DELETE)
730
+
731
+ **Generated Azure Functions:**
732
+ - `GET /api/product` - List all items (with Cosmos DB input binding)
733
+ - `GET /api/product/{id}` - Get item by ID (with Cosmos DB input binding)
734
+ - `POST /api/product` - Create new item (with Cosmos DB output binding)
735
+ - `PUT /api/product/{id}` - Update item (with Cosmos DB output binding)
736
+ - `DELETE /api/product/{id}` - Delete item (using Cosmos DB client)
737
+
738
+ **Generated Next.js BFF Routes:**
739
+ - `GET /api/product` - Proxy to Azure Functions
740
+ - `POST /api/product` - Proxy to Azure Functions (with client-side validation)
741
+ - `GET /api/product/[id]` - Proxy to Azure Functions
742
+ - `PUT /api/product/[id]` - Proxy to Azure Functions (with client-side validation)
743
+ - `DELETE /api/product/[id]` - Proxy to Azure Functions
744
+
745
+ All generated code:
746
+ - โœ… Uses Azure Functions input/output bindings for optimal performance
747
+ - โœ… Follows Azure best practices
748
+ - โœ… Validates data with your shared Zod schema
749
+ - โœ… Maintains end-to-end type safety
750
+ - โœ… Includes proper error handling
751
+
621
752
  ## ๐Ÿ”ง Configuration
622
753
 
623
754
  Create `swallowkit.config.js` in your project root:
@@ -672,9 +803,47 @@ export async function GET() {
672
803
  }
673
804
  ```
674
805
 
675
- ## ๐Ÿค Contributing
676
-
677
- This project is in active development. Feedback and suggestions are welcome!
806
+ ## ๐Ÿ—บ๏ธ Roadmap
807
+
808
+ SwallowKit is currently in beta. The following features are planned for future releases:
809
+
810
+ ### โœ… Completed Features (v0.1.0-beta.2+)
811
+
812
+ - **`swallowkit scaffold` command**: โœ… Generate CRUD operations from Zod models
813
+ - Automatically creates Azure Functions with Cosmos DB bindings
814
+ - Generates Next.js BFF API routes
815
+ - Maintains end-to-end type safety with Zod validation
816
+
817
+ ### Planned Features
818
+
819
+ - **`swallowkit build` command**: Build Next.js app in standalone mode for Azure Static Web Apps deployment
820
+ - **`swallowkit deploy` command**: Automated deployment to Azure Static Web Apps with Azure Functions
821
+ - **`swallowkit setup` command**: One-click installation of Azure CLI, SWA CLI, and development tools
822
+ - **Cosmos DB Integration**:
823
+ - Built-in Cosmos DB client with automatic connection management
824
+ - `BaseModel` and `SchemaRepository` for type-safe database operations
825
+ - Automatic Cosmos DB Emulator detection and setup
826
+ - Database initialization and migration support
827
+ - **Advanced CLI Features**:
828
+ - `swallowkit generate` command for scaffolding components, schemas, and API routes
829
+ - Interactive project setup with customizable templates
830
+ - Environment configuration wizard
831
+ - **Enhanced Developer Experience**:
832
+ - Hot reload for Azure Functions during development
833
+ - Integrated debugging support for Next.js + Functions
834
+ - Better error messages and troubleshooting guides
835
+ - **Production Features**:
836
+ - Environment-specific configuration management
837
+ - Automated testing setup for Zod schemas
838
+ - Performance monitoring integration with Application Insights
839
+ - CI/CD pipeline templates for GitHub Actions and Azure DevOps
840
+
841
+ ### Current Limitations
842
+
843
+ - `build`, `deploy`, and `setup` commands are not yet implemented
844
+ - Cosmos DB integration is included in the codebase but not connected to the init workflow
845
+ - Advanced scaffolding features (components, schemas) are planned
846
+ - Azure deployment requires manual configuration of Static Web Apps and Functions
678
847
 
679
848
  ## ๐Ÿ“„ License
680
849
 
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,eAAO,MAAM,UAAU,SAgBnB,CAAC"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAepC,eAAO,MAAM,UAAU,SAgBnB,CAAC"}
@@ -38,30 +38,122 @@ const commander_1 = require("commander");
38
38
  const child_process_1 = require("child_process");
39
39
  const path = __importStar(require("path"));
40
40
  const fs = __importStar(require("fs"));
41
+ const cosmos_1 = require("@azure/cosmos");
41
42
  exports.devCommand = new commander_1.Command()
42
43
  .name('dev')
43
- .description('SwallowKit ้–‹็™บใ‚ตใƒผใƒใƒผใ‚’่ตทๅ‹•๏ผˆCosmos DB + Next.js + Azure Functions๏ผ‰')
44
- .option('-p, --port <port>', 'Next.js ใƒใƒผใƒˆ', '3000')
45
- .option('-f, --functions-port <port>', 'Azure Functions ใƒใƒผใƒˆ', '7071')
46
- .option('--host <host>', 'ใƒ›ใ‚นใƒˆๅ', 'localhost')
47
- .option('--open', 'ใƒ–ใƒฉใ‚ฆใ‚ถใ‚’่‡ชๅ‹•ใง้–‹ใ', false)
48
- .option('--verbose', '่ฉณ็ดฐใƒญใ‚ฐใ‚’่กจ็คบ', false)
49
- .option('--no-functions', 'Azure Functions ใฎ่ตทๅ‹•ใ‚’ใ‚นใ‚ญใƒƒใƒ—', false)
44
+ .description('Start SwallowKit development server (Cosmos DB + Next.js + Azure Functions)')
45
+ .option('-p, --port <port>', 'Next.js port', '3000')
46
+ .option('-f, --functions-port <port>', 'Azure Functions port', '7071')
47
+ .option('--host <host>', 'Host name', 'localhost')
48
+ .option('--open', 'Open browser automatically', false)
49
+ .option('--verbose', 'Show verbose logs', false)
50
+ .option('--no-functions', 'Skip Azure Functions startup', false)
50
51
  .action(async (options) => {
51
- console.log('๐Ÿš€ SwallowKit ้–‹็™บ็’ฐๅขƒใ‚’่ตทๅ‹•ไธญ...');
52
+ console.log('๐Ÿš€ Starting SwallowKit development environment...');
52
53
  if (options.verbose) {
53
- console.log('โš™๏ธ ใ‚ชใƒ—ใ‚ทใƒงใƒณ:', options);
54
+ console.log('โš™๏ธ Options:', options);
54
55
  }
55
56
  await startDevEnvironment(options);
56
57
  });
58
+ async function initializeCosmosDB(databaseName) {
59
+ try {
60
+ // Read local.settings.json from functions directory
61
+ const functionsDir = path.join(process.cwd(), 'functions');
62
+ const localSettingsPath = path.join(functionsDir, 'local.settings.json');
63
+ if (!fs.existsSync(localSettingsPath)) {
64
+ console.log('โš ๏ธ local.settings.json not found. Skipping Cosmos DB initialization.');
65
+ return;
66
+ }
67
+ const localSettings = JSON.parse(fs.readFileSync(localSettingsPath, 'utf-8'));
68
+ const connectionString = localSettings.Values?.CosmosDBConnection;
69
+ const dbName = localSettings.Values?.COSMOS_DB_DATABASE_NAME || databaseName;
70
+ if (!connectionString) {
71
+ console.log('โš ๏ธ CosmosDBConnection not found in local.settings.json. Skipping Cosmos DB initialization.');
72
+ return;
73
+ }
74
+ console.log('๐Ÿ—„๏ธ Initializing Cosmos DB...');
75
+ // Parse connection string
76
+ const endpointMatch = connectionString.match(/AccountEndpoint=([^;]+)/);
77
+ const keyMatch = connectionString.match(/AccountKey=([^;]+)/);
78
+ if (!endpointMatch || !keyMatch) {
79
+ console.log('โš ๏ธ Invalid CosmosDB connection string format.');
80
+ return;
81
+ }
82
+ const client = new cosmos_1.CosmosClient({
83
+ endpoint: endpointMatch[1],
84
+ key: keyMatch[1]
85
+ });
86
+ // Create database if not exists
87
+ const { database } = await client.databases.createIfNotExists({ id: dbName });
88
+ console.log(`โœ… Database "${dbName}" ready`);
89
+ // Read scaffold.json to get list of models
90
+ const scaffoldConfigPath = path.join(process.cwd(), '.swallowkit', 'scaffold.json');
91
+ if (fs.existsSync(scaffoldConfigPath)) {
92
+ const scaffoldConfig = JSON.parse(fs.readFileSync(scaffoldConfigPath, 'utf-8'));
93
+ if (scaffoldConfig.models && Array.isArray(scaffoldConfig.models)) {
94
+ for (const model of scaffoldConfig.models) {
95
+ const modelName = typeof model === 'string' ? model : model.name;
96
+ const containerName = `${modelName}s`; // Pluralize model name
97
+ // Try creating container with full partition key definition first
98
+ let containerCreated = false;
99
+ try {
100
+ console.log(`๐Ÿ”ง Creating container "${containerName}" with partition key /id...`);
101
+ const containerResponse = await database.containers.createIfNotExists({
102
+ id: containerName,
103
+ partitionKey: {
104
+ paths: ['/id'],
105
+ kind: cosmos_1.PartitionKeyKind.Hash,
106
+ version: 2
107
+ }
108
+ });
109
+ console.log(`โœ… Container "${containerName}" ready (status: ${containerResponse.statusCode})`);
110
+ containerCreated = true;
111
+ }
112
+ catch (error) {
113
+ console.log(`โš ๏ธ Failed with full partition key definition: ${error.message}`);
114
+ console.log(`๐Ÿ”„ Retrying with simple partition key...`);
115
+ }
116
+ // If first attempt failed, try with simple partition key definition
117
+ if (!containerCreated) {
118
+ try {
119
+ const containerResponse = await database.containers.createIfNotExists({
120
+ id: containerName,
121
+ partitionKey: {
122
+ paths: ['/id']
123
+ }
124
+ });
125
+ console.log(`โœ… Container "${containerName}" ready (status: ${containerResponse.statusCode})`);
126
+ }
127
+ catch (containerError) {
128
+ console.error(`โŒ Failed to create container "${containerName}":`, containerError.message);
129
+ console.error(`Error code: ${containerError.code}`);
130
+ if (containerError.body) {
131
+ console.error(`Response body:`, JSON.stringify(containerError.body, null, 2));
132
+ }
133
+ // Continue with other containers
134
+ }
135
+ }
136
+ }
137
+ }
138
+ }
139
+ console.log('โœ… Cosmos DB initialization complete\n');
140
+ }
141
+ catch (error) {
142
+ console.error('โš ๏ธ Cosmos DB initialization failed:', error.message);
143
+ if (error.stack) {
144
+ console.error('Stack trace:', error.stack);
145
+ }
146
+ console.log('๐Ÿ’ก Make sure Cosmos DB Emulator is running');
147
+ }
148
+ }
57
149
  async function startDevEnvironment(options) {
58
150
  const port = options.port || '3000';
59
151
  const functionsPort = options.functionsPort || '7071';
60
152
  // ใƒ—ใƒญใ‚ปใ‚นใ‚’็ฎก็†ใ™ใ‚‹้…ๅˆ—
61
153
  const processes = [];
62
- // Ctrl+Cใงใƒ—ใƒญใ‚ปใ‚นใ‚’ใ‚ฏใƒชใƒผใƒณใ‚ขใƒƒใƒ—
154
+ // Cleanup processes on Ctrl+C
63
155
  process.on('SIGINT', () => {
64
- console.log('\n๐Ÿ›‘ ้–‹็™บใ‚ตใƒผใƒใƒผใ‚’ๅœๆญขไธญ...');
156
+ console.log('\n๐Ÿ›‘ Stopping development servers...');
65
157
  processes.forEach((proc) => {
66
158
  if (proc && !proc.killed) {
67
159
  proc.kill();
@@ -70,30 +162,35 @@ async function startDevEnvironment(options) {
70
162
  process.exit(0);
71
163
  });
72
164
  try {
73
- // 1. Next.js ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใฎ็ขบ่ช
165
+ // 1. Check for Next.js project
74
166
  const packageJsonPath = path.join(process.cwd(), 'package.json');
75
167
  const nextConfigPathJs = path.join(process.cwd(), 'next.config.js');
76
168
  const nextConfigPathTs = path.join(process.cwd(), 'next.config.ts');
77
169
  const nextConfigPathMjs = path.join(process.cwd(), 'next.config.mjs');
78
170
  if (!fs.existsSync(packageJsonPath)) {
79
- console.log('โŒ package.json ใŒ่ฆ‹ใคใ‹ใ‚Šใพใ›ใ‚“ใ€‚');
80
- console.log('๐Ÿ’ก Next.js ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใฎใƒซใƒผใƒˆใƒ‡ใ‚ฃใƒฌใ‚ฏใƒˆใƒชใงๅฎŸ่กŒใ—ใฆใใ ใ•ใ„ใ€‚');
171
+ console.log('โŒ package.json not found.');
172
+ console.log('๐Ÿ’ก Please run this command in the root directory of a Next.js project.');
81
173
  process.exit(1);
82
174
  }
83
175
  if (!fs.existsSync(nextConfigPathJs) && !fs.existsSync(nextConfigPathTs) && !fs.existsSync(nextConfigPathMjs)) {
84
- console.log('โš ๏ธ next.config ใƒ•ใ‚กใ‚คใƒซใŒ่ฆ‹ใคใ‹ใ‚Šใพใ›ใ‚“ใ€‚Next.js ใƒ—ใƒญใ‚ธใ‚งใ‚ฏใƒˆใงใ™ใ‹๏ผŸ');
176
+ console.log('โš ๏ธ next.config file not found. Is this a Next.js project?');
85
177
  }
86
- // 2. Azure Functions ใŒๅญ˜ๅœจใ™ใ‚‹ใ‹ใƒใ‚งใƒƒใ‚ฏ
178
+ // 2. Check if Azure Functions exists
87
179
  const functionsDir = path.join(process.cwd(), 'functions');
88
180
  const hasFunctions = fs.existsSync(functionsDir) &&
89
181
  fs.existsSync(path.join(functionsDir, 'package.json'));
90
182
  if (hasFunctions && !options.noFunctions) {
183
+ // Initialize Cosmos DB before starting Functions
184
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
185
+ const appName = packageJson.name || 'App';
186
+ const databaseName = `${appName.charAt(0).toUpperCase() + appName.slice(1)}Database`;
187
+ await initializeCosmosDB(databaseName);
91
188
  console.log('');
92
- console.log('๐Ÿš€ Azure Functions ใ‚’่ตทๅ‹•ไธญ...');
93
- // functionsใƒ‡ใ‚ฃใƒฌใ‚ฏใƒˆใƒชใง npm install ใŒๅฎŸ่กŒใ•ใ‚Œใฆใ„ใ‚‹ใ‹็ขบ่ช
189
+ console.log('๐Ÿš€ Starting Azure Functions...');
190
+ // Check if npm install has been run in functions directory
94
191
  const functionsNodeModules = path.join(functionsDir, 'node_modules');
95
192
  if (!fs.existsSync(functionsNodeModules)) {
96
- console.log('๐Ÿ“ฆ Azure Functions ใฎไพๅญ˜้–ขไฟ‚ใ‚’ใ‚คใƒณใ‚นใƒˆใƒผใƒซไธญ...');
193
+ console.log('๐Ÿ“ฆ Installing Azure Functions dependencies...');
97
194
  const npmInstall = (0, child_process_1.spawn)('npm', ['install'], {
98
195
  cwd: functionsDir,
99
196
  shell: true,
@@ -115,57 +212,59 @@ async function startDevEnvironment(options) {
115
212
  const funcProcess = (0, child_process_1.spawn)('npm', ['start'], {
116
213
  cwd: functionsDir,
117
214
  shell: true,
118
- stdio: options.verbose ? 'inherit' : 'pipe',
215
+ stdio: 'pipe', // Always pipe to capture output
119
216
  env: { ...process.env, FUNCTIONS_PORT: functionsPort }
120
217
  });
121
- // Functions ใฎๅ‡บๅŠ›ใ‚’ๆ•ดๅฝขใ—ใฆ่กจ็คบ
122
- if (!options.verbose && funcProcess.stdout) {
218
+ // Functions ใฎๅ‡บๅŠ›ใ‚’ใใฎใพใพ่กจ็คบ๏ผˆใƒ—ใƒฌใƒ•ใ‚ฃใƒƒใ‚ฏใ‚นไป˜ใ๏ผ‰
219
+ if (funcProcess.stdout) {
123
220
  funcProcess.stdout.on('data', (data) => {
124
221
  const output = data.toString();
125
- // ้‡่ฆใชใƒกใƒƒใ‚ปใƒผใ‚ธใฎใฟ่กจ็คบ
126
- if (output.includes('Worker process started') ||
127
- output.includes('Host started') ||
128
- output.includes('Functions:') ||
129
- output.includes('For detailed output')) {
130
- process.stdout.write(`[Functions] ${output}`);
131
- }
222
+ // ๅ„่กŒใซใƒ—ใƒฌใƒ•ใ‚ฃใƒƒใ‚ฏใ‚นใ‚’ไป˜ใ‘ใฆๅ‡บๅŠ›
223
+ const lines = output.split('\n').filter((line) => line.trim());
224
+ lines.forEach((line) => {
225
+ console.log(`[Functions] ${line}`);
226
+ });
132
227
  });
133
228
  }
134
229
  if (funcProcess.stderr) {
135
230
  funcProcess.stderr.on('data', (data) => {
136
- console.error(`[Functions Error] ${data}`);
231
+ const output = data.toString();
232
+ const lines = output.split('\n').filter((line) => line.trim());
233
+ lines.forEach((line) => {
234
+ console.error(`[Functions Error] ${line}`);
235
+ });
137
236
  });
138
237
  }
139
238
  processes.push(funcProcess);
140
239
  funcProcess.on('error', (error) => {
141
- console.error('โš ๏ธ Azure Functions ่ตทๅ‹•ใ‚จใƒฉใƒผ:', error.message);
142
- console.log('๐Ÿ’ก Azure Functions Core Tools ใŒใ‚คใƒณใ‚นใƒˆใƒผใƒซใ•ใ‚Œใฆใ„ใ‚‹ใ‹็ขบ่ชใ—ใฆใใ ใ•ใ„');
240
+ console.error('โš ๏ธ Azure Functions startup error:', error.message);
241
+ console.log('๐Ÿ’ก Please ensure Azure Functions Core Tools is installed');
143
242
  console.log(' npm install -g azure-functions-core-tools@4');
144
243
  });
145
244
  funcProcess.on('close', (code) => {
146
245
  if (code !== 0) {
147
- console.log(`\nโน๏ธ Azure Functions ใŒ็ต‚ไบ†ใ—ใพใ—ใŸ (็ต‚ไบ†ใ‚ณใƒผใƒ‰: ${code})`);
246
+ console.log(`\nโน๏ธ Azure Functions exited (exit code: ${code})`);
148
247
  }
149
248
  });
150
- console.log(`โœ… Azure Functions ใŒ่ตทๅ‹•ใ—ใพใ—ใŸ (ใƒใƒผใƒˆ: ${functionsPort})`);
249
+ console.log(`โœ… Azure Functions started (port: ${functionsPort})`);
151
250
  }
152
251
  else if (!hasFunctions) {
153
252
  console.log('');
154
- console.log('โ„น๏ธ functions/ ใƒ‡ใ‚ฃใƒฌใ‚ฏใƒˆใƒชใŒ่ฆ‹ใคใ‹ใ‚Šใพใ›ใ‚“ใ€‚Next.js ใฎใฟ่ตทๅ‹•ใ—ใพใ™ใ€‚');
253
+ console.log('โ„น๏ธ functions/ directory not found. Starting Next.js only.');
155
254
  }
156
255
  else if (options.noFunctions) {
157
256
  console.log('');
158
- console.log('โ„น๏ธ --no-functions ใŒๆŒ‡ๅฎšใ•ใ‚Œใฆใ„ใ‚‹ใŸใ‚ใ€Azure Functions ใฏใ‚นใ‚ญใƒƒใƒ—ใ—ใพใ™ใ€‚');
257
+ console.log('โ„น๏ธ --no-functions specified. Skipping Azure Functions.');
159
258
  }
160
259
  console.log('');
161
- console.log('๐Ÿš€ Next.js ้–‹็™บใ‚ตใƒผใƒใƒผใ‚’่ตทๅ‹•ไธญ...');
162
- // 5. Next.js ้–‹็™บใ‚ตใƒผใƒใƒผใ‚’่ตทๅ‹•
260
+ console.log('๐Ÿš€ Starting Next.js development server...');
261
+ // 5. Start Next.js development server
163
262
  const nextArgs = ['next', 'dev', '--port', port];
164
263
  if (options.open) {
165
- // Next.js 14+ ใงใฏ --open ใ‚ชใƒ—ใ‚ทใƒงใƒณใŒ้žๆŽจๅฅจใซใชใฃใŸใŸใ‚ใ€ๆ‰‹ๅ‹•ใงใƒ–ใƒฉใ‚ฆใ‚ถใ‚’้–‹ใ
264
+ // Next.js 14+ deprecated --open option, so we open browser manually
166
265
  setTimeout(() => {
167
266
  const url = `http://${options.host || 'localhost'}:${port}`;
168
- console.log(`\n๐ŸŒ ใƒ–ใƒฉใ‚ฆใ‚ถใ‚’้–‹ใ„ใฆใ„ใพใ™: ${url}`);
267
+ console.log(`\n๐ŸŒ Opening browser: ${url}`);
169
268
  const start = process.platform === 'darwin' ? 'open' :
170
269
  process.platform === 'win32' ? 'start' : 'xdg-open';
171
270
  (0, child_process_1.spawn)(start, [url], { shell: true });
@@ -178,14 +277,14 @@ async function startDevEnvironment(options) {
178
277
  });
179
278
  processes.push(nextProcess);
180
279
  nextProcess.on('error', (error) => {
181
- console.error('โŒ Next.js ่ตทๅ‹•ใ‚จใƒฉใƒผ:', error.message);
280
+ console.error('โŒ Next.js startup error:', error.message);
182
281
  process.exit(1);
183
282
  });
184
283
  nextProcess.on('close', (code) => {
185
284
  if (code !== 0) {
186
- console.log(`\nโน๏ธ Next.js ใŒ็ต‚ไบ†ใ—ใพใ—ใŸ (็ต‚ไบ†ใ‚ณใƒผใƒ‰: ${code})`);
285
+ console.log(`\nโน๏ธ Next.js exited (exit code: ${code})`);
187
286
  }
188
- // Next.js ใŒ็ต‚ไบ†ใ—ใŸใ‚‰ๅ…จใƒ—ใƒญใ‚ปใ‚นใ‚’็ต‚ไบ†
287
+ // Exit all processes when Next.js exits
189
288
  processes.forEach((proc) => {
190
289
  if (proc && !proc.killed) {
191
290
  proc.kill();
@@ -194,7 +293,7 @@ async function startDevEnvironment(options) {
194
293
  process.exit(code || 0);
195
294
  });
196
295
  console.log('');
197
- console.log('โœ… SwallowKit ้–‹็™บ็’ฐๅขƒใŒ่ตทๅ‹•ใ—ใพใ—ใŸ๏ผ');
296
+ console.log('โœ… SwallowKit development environment is running!');
198
297
  console.log('');
199
298
  console.log(`๐Ÿ“ฑ Next.js: http://${options.host || 'localhost'}:${port}`);
200
299
  if (hasFunctions && !options.noFunctions) {
@@ -202,14 +301,14 @@ async function startDevEnvironment(options) {
202
301
  }
203
302
  console.log('');
204
303
  if (hasFunctions && !options.noFunctions) {
205
- console.log('๐Ÿ’ก Azure Functions ใจ Next.js BFF ใŒ้€ฃๆบใ—ใฆใ„ใพใ™');
304
+ console.log('๐Ÿ’ก Azure Functions and Next.js BFF are connected');
206
305
  }
207
306
  console.log('');
208
- console.log('๐Ÿ›‘ ๅœๆญขใ™ใ‚‹ใซใฏ Ctrl+C ใ‚’ๆŠผใ—ใฆใใ ใ•ใ„');
307
+ console.log('๐Ÿ›‘ Press Ctrl+C to stop');
209
308
  console.log('');
210
309
  }
211
310
  catch (error) {
212
- console.error('โŒ ้–‹็™บ็’ฐๅขƒใฎ่ตทๅ‹•ใซๅคฑๆ•—ใ—ใพใ—ใŸ:', error instanceof Error ? error.message : error);
311
+ console.error('โŒ Failed to start development environment:', error instanceof Error ? error.message : error);
213
312
  processes.forEach((proc) => {
214
313
  if (proc && !proc.killed) {
215
314
  proc.kill();
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,5 @@ export { devCommand } from "./dev";
6
6
  export { buildCommand } from "./build";
7
7
  export { setupCommand } from "./setup";
8
8
  export { deployCommand } from "./deploy";
9
+ export { scaffoldCommand } from "./scaffold";
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * SwallowKit CLI ใ‚ณใƒžใƒณใƒ‰ใฎๅ†ใ‚จใ‚ฏใ‚นใƒใƒผใƒˆ
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.deployCommand = exports.setupCommand = exports.buildCommand = exports.devCommand = exports.initCommand = void 0;
6
+ exports.scaffoldCommand = exports.deployCommand = exports.setupCommand = exports.buildCommand = exports.devCommand = exports.initCommand = void 0;
7
7
  var init_1 = require("./init");
8
8
  Object.defineProperty(exports, "initCommand", { enumerable: true, get: function () { return init_1.initCommand; } });
9
9
  var dev_1 = require("./dev");
@@ -14,4 +14,6 @@ var setup_1 = require("./setup");
14
14
  Object.defineProperty(exports, "setupCommand", { enumerable: true, get: function () { return setup_1.setupCommand; } });
15
15
  var deploy_1 = require("./deploy");
16
16
  Object.defineProperty(exports, "deployCommand", { enumerable: true, get: function () { return deploy_1.deployCommand; } });
17
+ var scaffold_1 = require("./scaffold");
18
+ Object.defineProperty(exports, "scaffoldCommand", { enumerable: true, get: function () { return scaffold_1.scaffoldCommand; } });
17
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,+BAAqC;AAA5B,mGAAA,WAAW,OAAA;AACpB,6BAAmC;AAA1B,iGAAA,UAAU,OAAA;AACnB,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AACrB,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AACrB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,+BAAqC;AAA5B,mGAAA,WAAW,OAAA;AACpB,6BAAmC;AAA1B,iGAAA,UAAU,OAAA;AACnB,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AACrB,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AACrB,mCAAyC;AAAhC,uGAAA,aAAa,OAAA;AACtB,uCAA6C;AAApC,2GAAA,eAAe,OAAA"}
@@ -1,6 +1,7 @@
1
1
  interface InitOptions {
2
2
  name: string;
3
3
  template: string;
4
+ nextVersion?: string;
4
5
  }
5
6
  export declare function initCommand(options: InitOptions): Promise<void>;
6
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,iBAmCrD"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,iBAsCrD"}