create-zuplo-api 6.60.21 → 6.60.22

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 (38) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +4 -4
  3. package/dist/templates/default/README-template.md +0 -29
  4. package/dist/templates/default/config/policies.json +0 -13
  5. package/dist/templates/default/config/routes.oas.json +0 -284
  6. package/dist/templates/default/docs/README-template.md +0 -45
  7. package/dist/templates/default/docs/gitignore +0 -32
  8. package/dist/templates/default/docs/pages/introduction.mdx +0 -153
  9. package/dist/templates/default/docs/pages/markdown.mdx +0 -108
  10. package/dist/templates/default/docs/public/banner-dark.svg +0 -100
  11. package/dist/templates/default/docs/public/banner.svg +0 -100
  12. package/dist/templates/default/docs/tsconfig.json +0 -16
  13. package/dist/templates/default/docs/zudoku.config.tsx +0 -93
  14. package/dist/templates/default/env.example +0 -2
  15. package/dist/templates/default/eslintrc.json +0 -7
  16. package/dist/templates/default/gitignore +0 -10
  17. package/dist/templates/default/modules/hello-world.ts +0 -21
  18. package/dist/templates/default/prettierrc.json +0 -1
  19. package/dist/templates/default/tsconfig.json +0 -19
  20. package/dist/templates/default/vscode/launch.json +0 -37
  21. package/dist/templates/default/vscode/settings.json +0 -20
  22. package/dist/templates/default/zuplo.jsonc +0 -4
  23. package/dist/templates/default-empty/config/policies.json +0 -3
  24. package/dist/templates/default-empty/config/routes.oas.json +0 -8
  25. package/dist/templates/default-empty/docs/README-template.md +0 -45
  26. package/dist/templates/default-empty/docs/gitignore +0 -32
  27. package/dist/templates/default-empty/docs/pages/introduction.mdx +0 -153
  28. package/dist/templates/default-empty/docs/pages/markdown.mdx +0 -108
  29. package/dist/templates/default-empty/docs/public/banner-dark.svg +0 -100
  30. package/dist/templates/default-empty/docs/public/banner.svg +0 -100
  31. package/dist/templates/default-empty/docs/tsconfig.json +0 -16
  32. package/dist/templates/default-empty/docs/zudoku.config.tsx +0 -93
  33. package/dist/templates/default-empty/env.example +0 -2
  34. package/dist/templates/default-empty/eslintrc.json +0 -7
  35. package/dist/templates/default-empty/gitignore +0 -10
  36. package/dist/templates/default-empty/prettierrc.json +0 -1
  37. package/dist/templates/default-empty/tsconfig.json +0 -19
  38. package/dist/templates/default-empty/zuplo.jsonc +0 -4
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-zuplo-api",
3
- "version": "6.60.21",
3
+ "version": "6.60.22",
4
4
  "keywords": [
5
5
  "api",
6
6
  "openapi",
@@ -35,7 +35,7 @@
35
35
  "@types/prompts": "2.4.9",
36
36
  "@types/tar": "^6.1.13",
37
37
  "@types/validate-npm-package-name": "4.0.2",
38
- "@vercel/ncc": "0.38.2",
38
+ "@vercel/ncc": "0.38.4",
39
39
  "async-retry": "1.3.3",
40
40
  "ci-info": "4.0.0",
41
41
  "commander": "12.1.0",
@@ -44,11 +44,11 @@
44
44
  "fast-glob": "^3.3.2",
45
45
  "picocolors": "1.1.0",
46
46
  "prompts": "2.4.2",
47
+ "rimraf": "^5.0.5",
47
48
  "semver": "^7.6.3",
48
49
  "tar": "^7.4.3",
49
50
  "update-check": "1.5.4",
50
- "validate-npm-package-name": "6.0.0",
51
- "rimraf": "^5.0.5"
51
+ "validate-npm-package-name": "6.0.0"
52
52
  },
53
53
  "engines": {
54
54
  "node": ">=20"
@@ -1,29 +0,0 @@
1
- ## Zuplo API
2
-
3
- This is a Zuplo API that was created with
4
- [`create-zuplo-api`](https://zuplo.com/docs).
5
-
6
- ## Getting Started
7
-
8
- First, run the development server:
9
-
10
- ```bash
11
- npm run dev
12
- # or
13
- yarn dev
14
- # or
15
- pnpm dev
16
- ```
17
-
18
- Open [http://localhost:9000](http://localhost:9000) with your browser to see the
19
- result.
20
-
21
- You can start editing the API by modifying `config/routes.oas.json`. The dev
22
- server will automatically reload the API with your changes.
23
-
24
- ## Learn More
25
-
26
- To learn more about Zuplo, you can visit the
27
- [Zuplo documentation](https://zuplo.com/docs).
28
-
29
- To connect with the community join [Discord](https://discord.zuplo.com).
@@ -1,13 +0,0 @@
1
- {
2
- "policies": [
3
- {
4
- "handler": {
5
- "export": "MockApiInboundPolicy",
6
- "module": "$import(@zuplo/runtime)",
7
- "options": {}
8
- },
9
- "name": "mock-api-inbound",
10
- "policyType": "mock-api-inbound"
11
- }
12
- ]
13
- }
@@ -1,284 +0,0 @@
1
- {
2
- "openapi": "3.1.0",
3
- "info": {
4
- "version": "1.0.0",
5
- "title": "My Zuplo API"
6
- },
7
- "paths": {
8
- "/todos": {
9
- "get": {
10
- "summary": "Get all todos",
11
- "description": "**Retrieves a complete list of all todo items** from the system. This endpoint returns all todos regardless of their completion status or owner, making it useful for displaying comprehensive todo lists or performing bulk operations.",
12
- "responses": {
13
- "200": {
14
- "description": "A list of todos",
15
- "content": {
16
- "application/json": {
17
- "schema": {
18
- "type": "array",
19
- "items": {
20
- "$ref": "#/components/schemas/Todo"
21
- }
22
- },
23
- "examples": {
24
- "mixed_todos": {
25
- "summary": "A list of todos with different completion states",
26
- "value": [
27
- {
28
- "id": 1,
29
- "title": "Buy groceries",
30
- "completed": false,
31
- "userId": 123
32
- },
33
- {
34
- "id": 2,
35
- "title": "Write documentation",
36
- "completed": true,
37
- "userId": 456
38
- },
39
- {
40
- "id": 3,
41
- "title": "Review pull requests",
42
- "completed": false,
43
- "userId": 123
44
- }
45
- ]
46
- }
47
- }
48
- }
49
- }
50
- }
51
- },
52
- "operationId": "1e0edd2a-8d53-4355-805f-54b7e5555725",
53
- "x-zuplo-route": {
54
- "corsPolicy": "none",
55
- "handler": {
56
- "export": "urlForwardHandler",
57
- "module": "$import(@zuplo/runtime)",
58
- "options": {
59
- "baseUrl": "https://todo.zuplo.io"
60
- }
61
- }
62
- },
63
- "tags": ["Todo"]
64
- },
65
- "post": {
66
- "summary": "Create a new todo",
67
- "description": "**Creates a new todo item** with the provided details. The todo will be assigned a unique ID automatically and can include a title, completion status, and user association. This is the primary endpoint for adding new tasks to the system.",
68
- "requestBody": {
69
- "required": true,
70
- "content": {
71
- "application/json": {
72
- "schema": {
73
- "$ref": "#/components/schemas/CreateTodo"
74
- }
75
- }
76
- }
77
- },
78
- "responses": {
79
- "201": {
80
- "description": "Todo created successfully",
81
- "content": {
82
- "application/json": {
83
- "schema": {
84
- "$ref": "#/components/schemas/Todo"
85
- },
86
- "examples": {
87
- "new_todo": {
88
- "summary": "A newly created todo",
89
- "value": {
90
- "id": 4,
91
- "title": "Deploy application",
92
- "completed": false,
93
- "userId": 789
94
- }
95
- }
96
- }
97
- }
98
- }
99
- },
100
- "400": {
101
- "description": "Invalid request body"
102
- }
103
- },
104
- "operationId": "55ee860b-fe7e-4d66-a228-bb5320c3305d",
105
- "x-zuplo-route": {
106
- "corsPolicy": "none",
107
- "handler": {
108
- "export": "urlForwardHandler",
109
- "module": "$import(@zuplo/runtime)",
110
- "options": {
111
- "baseUrl": "https://todo.zuplo.io"
112
- }
113
- }
114
- },
115
- "tags": ["Todo"]
116
- }
117
- },
118
- "/todos/{id}": {
119
- "put": {
120
- "summary": "Update a todo",
121
- "description": "**Updates an existing todo item** by its unique identifier. You can modify any combination of the todo's properties including title, completion status, and user assignment. All changes are applied atomically to ensure data consistency.",
122
- "parameters": [
123
- {
124
- "name": "id",
125
- "in": "path",
126
- "required": true,
127
- "schema": {
128
- "type": "integer"
129
- },
130
- "description": "The todo ID"
131
- }
132
- ],
133
- "requestBody": {
134
- "required": true,
135
- "content": {
136
- "application/json": {
137
- "schema": {
138
- "$ref": "#/components/schemas/UpdateTodo"
139
- }
140
- }
141
- }
142
- },
143
- "responses": {
144
- "200": {
145
- "description": "Todo updated successfully",
146
- "content": {
147
- "application/json": {
148
- "schema": {
149
- "$ref": "#/components/schemas/Todo"
150
- },
151
- "examples": {
152
- "updated_todo": {
153
- "summary": "A todo that has been updated",
154
- "value": {
155
- "id": 1,
156
- "title": "Buy groceries and cook dinner",
157
- "completed": true,
158
- "userId": 123
159
- }
160
- }
161
- }
162
- }
163
- }
164
- },
165
- "400": {
166
- "description": "Invalid request body"
167
- },
168
- "404": {
169
- "description": "Todo not found"
170
- }
171
- },
172
- "operationId": "4569a607-338e-4d66-80f7-17f911778b1d",
173
- "x-zuplo-route": {
174
- "corsPolicy": "none",
175
- "handler": {
176
- "export": "urlForwardHandler",
177
- "module": "$import(@zuplo/runtime)",
178
- "options": {
179
- "baseUrl": "https://todo.zuplo.io"
180
- }
181
- }
182
- },
183
- "tags": ["Todo"]
184
- },
185
- "delete": {
186
- "summary": "Delete a todo",
187
- "description": "**Permanently removes a todo item** from the system using its unique identifier. This operation cannot be undone, so use with caution. The endpoint will return a 404 error if the specified todo does not exist.",
188
- "parameters": [
189
- {
190
- "name": "id",
191
- "in": "path",
192
- "required": true,
193
- "schema": {
194
- "type": "integer"
195
- },
196
- "description": "The todo ID"
197
- }
198
- ],
199
- "responses": {
200
- "204": {
201
- "description": "Todo deleted successfully"
202
- },
203
- "404": {
204
- "description": "Todo not found"
205
- }
206
- },
207
- "operationId": "888a8d15-aa30-45fe-8957-b07a8bcdd7ca",
208
- "x-zuplo-route": {
209
- "corsPolicy": "none",
210
- "handler": {
211
- "export": "urlForwardHandler",
212
- "module": "$import(@zuplo/runtime)",
213
- "options": {
214
- "baseUrl": "https://todo.zuplo.io"
215
- }
216
- }
217
- },
218
- "tags": ["Todo"]
219
- }
220
- }
221
- },
222
- "components": {
223
- "schemas": {
224
- "Todo": {
225
- "type": "object",
226
- "properties": {
227
- "id": {
228
- "type": "integer",
229
- "description": "The todo ID"
230
- },
231
- "title": {
232
- "type": "string",
233
- "description": "The todo title"
234
- },
235
- "completed": {
236
- "type": "boolean",
237
- "description": "Whether the todo is completed"
238
- },
239
- "userId": {
240
- "type": "integer",
241
- "description": "The user ID who owns the todo"
242
- }
243
- },
244
- "required": ["id", "title", "completed", "userId"]
245
- },
246
- "CreateTodo": {
247
- "type": "object",
248
- "properties": {
249
- "title": {
250
- "type": "string",
251
- "description": "The todo title"
252
- },
253
- "completed": {
254
- "type": "boolean",
255
- "description": "Whether the todo is completed",
256
- "default": false
257
- },
258
- "userId": {
259
- "type": "integer",
260
- "description": "The user ID who owns the todo"
261
- }
262
- },
263
- "required": ["title", "userId"]
264
- },
265
- "UpdateTodo": {
266
- "type": "object",
267
- "properties": {
268
- "title": {
269
- "type": "string",
270
- "description": "The todo title"
271
- },
272
- "completed": {
273
- "type": "boolean",
274
- "description": "Whether the todo is completed"
275
- },
276
- "userId": {
277
- "type": "integer",
278
- "description": "The user ID who owns the todo"
279
- }
280
- }
281
- }
282
- }
283
- }
284
- }
@@ -1,45 +0,0 @@
1
- # Developer Portal
2
-
3
- This is your
4
- [Zuplo Developer Portal](https://zuplo.com/docs/dev-portal/introduction). This
5
- developer portal allows you to ship a beautiful API documentation for your
6
- users. You can customize this portal to match your brand and style.
7
-
8
- This developer portal is configured to work with your Zuplo API. When you
9
- publish your API, your developer portal will be automatically published with the
10
- latest API documentation.
11
-
12
- For more information, visit the
13
- [Documentation](https://zuplo.com/docs/dev-portal/introduction).
14
-
15
- The Zuplo Developer Portal is built on top of the open source
16
- [Zudoku](https://zudoku.dev) project, a powerful tool for creating and managing
17
- API documentation. If you would like to learn more about the project, open a
18
- feature request, or contribute to the codebase, visit the
19
- [Zudoku GitHub repository](https://github.com/zuplo/zudoku).
20
-
21
- ## Local Development
22
-
23
- After you have connected your Zuplo project to
24
- [source control](https://zuplo.com/docs/articles/source-control) you can clone
25
- your project locally. Running the Developer Portal locally allows you to see
26
- changes in real-time with live-reload.
27
-
28
- 1. Clone the repository
29
-
30
- ```bash
31
- git clone https://github.com/my-org/my-repo
32
- cd my-repo
33
- ```
34
-
35
- 2. Install dependencies
36
-
37
- ```bash
38
- npm install
39
- ```
40
-
41
- 3. Start the development server
42
-
43
- ```bash
44
- npm run docs
45
- ```
@@ -1,32 +0,0 @@
1
- # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2
-
3
- # dependencies
4
- /node_modules
5
- /.pnp
6
- .pnp.*
7
- .yarn/*
8
- !.yarn/patches
9
- !.yarn/plugins
10
- !.yarn/releases
11
- !.yarn/versions
12
-
13
- # testing
14
- /coverage
15
-
16
- # zudoku
17
- /dist/
18
-
19
- # misc
20
- .DS_Store
21
- *.pem
22
-
23
- # debug
24
- npm-debug.log*
25
- yarn-debug.log*
26
- yarn-error.log*
27
-
28
- # env files (can opt-in for commiting if needed)
29
- .env*
30
-
31
- # typescript
32
- *.tsbuildinfo
@@ -1,153 +0,0 @@
1
- ---
2
- description: Welcome to your new Zudoku documentation site.
3
- sidebar_label: My Developer Portal
4
- sidebar_icon: panel-top
5
- category: ""
6
- ---
7
-
8
- <div>
9
- <img src="/banner.svg" className="dark:hidden" />
10
- <img src="/banner-dark.svg" className="hidden dark:block" />
11
- </div>
12
-
13
- # Welcome to Better API Documentation
14
-
15
- Welcome to your new developer portal that makes sense. 🎉
16
-
17
- This is your new developer portal, built with ["Zudoku by Zuplo"](https://github.com/zuplo/zudoku)
18
- and designed to elevate your API documentation experience. We've streamlined the setup process so
19
- you can focus on what matters most: creating exceptional developer experiences.
20
-
21
- Think of this as your API's professional showcase—presenting your endpoints and documentation in the
22
- best possible light. Whether you're launching innovative new features or improving existing
23
- services, this portal provides the foundation for clear, accessible, and engaging developer
24
- documentation.
25
-
26
- Let's explore what we've configured for you and how you can customize it to perfectly match your
27
- needs.
28
-
29
- ## Let's Review Your Configuration
30
-
31
- The developer portal is configured in the `zudoku.config.tsx` file. We've created a starter
32
- configuration to get you up and running quickly. Let's walk you through everything we've set up so
33
- you know how to customize it:
34
-
35
- <Stepper>
36
-
37
- 1. **Change the Basics**
38
-
39
- First, you may want to change the title and banner we've put in place. These are part of the
40
- `page` section in your configuration.
41
-
42
- :::tip
43
-
44
- **Have a company logo?** Learn how you can
45
- [add your logo](https://zuplo.com/docs/dev-portal/zudoku/configuration/site#logo) in our
46
- documentation.
47
-
48
- :::
49
-
50
- ```jsx
51
- {
52
- // ...
53
- "page": {
54
- "title": "My Developer Portal",
55
- "banner": {
56
- "message": (
57
- <div className="w-full text-center">
58
- <strong>Congrats!</strong> 🙌 You just created your first developer
59
- portal.
60
- </div>
61
- ),
62
- "color": "info",
63
- "dismissible": true,
64
- }
65
- }
66
- ```
67
-
68
- 1. **API Reference**
69
-
70
- Your [API Reference](/api) is generated from your Zuplo OpenAPI file in `../routes.oas.json`—you
71
- can add other APIs whenever you need them. Improve your documentation by adding more details to
72
- the OpenAPI file.
73
-
74
- ```json
75
- {
76
- // ...
77
- "apis": {
78
- "type": "file",
79
- "input": "../config/routes.oas.json",
80
- "navigationId": "api"
81
- }
82
- }
83
- ```
84
-
85
- 1. **Authentication & Login**
86
-
87
- We've configured your project to use [Auth0](https://auth0.com) as an authentication provider
88
- with our demo account. We support many authentication providers—check the
89
- [documentation on how to configure](https://zuplo.com/docs/dev-portal/zudoku/configuration/authentication#authentication-providers)
90
- each one.
91
-
92
- :::caution
93
-
94
- You must change the authentication provider before taking this to **production**. Using our demo
95
- provider is not secure for production use.
96
-
97
- :::
98
-
99
- ```json
100
- {
101
- // ...
102
- "authentication": {
103
- "type": "auth0",
104
- "domain": "auth.zuplo.io",
105
- "clientId": "kWQs12Q9Og4w6zzI82qJSa3klN1sMtvz",
106
- "audience": "https://api.example.com/"
107
- }
108
- }
109
- ```
110
-
111
- 1. **API Keys**
112
-
113
- We've enabled API Keys on your developer portal. This connects to the API Key Service in Zuplo.
114
- To add API Keys for your users, create a consumer with the matching email address in **Services
115
- => API Key Service** in Zuplo, or
116
- [create a Consumer using the Zuplo API](https://zuplo.com/docs/api/api-keys-consumers#creates-a-consumer).
117
-
118
- ```json
119
- {
120
- // ...
121
- "apiKeys": {
122
- "enabled": true
123
- }
124
- }
125
- ```
126
-
127
- </Stepper>
128
-
129
- ## Make It Yours
130
-
131
- You can customize the look and feel of your documentation site by modifying the `theme` section in
132
- `zudoku.config.tsx`. Why not try changing the primary color of your site?
133
-
134
- ```json
135
- {
136
- // ...
137
- "theme": {
138
- "light": {
139
- "primary": "316 100% 50%",
140
- "primaryForeground": "360 100% 100%"
141
- },
142
- "dark": {
143
- "primary": "316 100% 50%",
144
- "primaryForeground": "360 100% 100%"
145
- }
146
- }
147
- // ...
148
- }
149
- ```
150
-
151
- We have extensive customization options available. From colors to fonts and borders, find the
152
- [full list of options](https://zuplo.com/docs/dev-portal/zudoku/customization/colors-theme) in our
153
- documentation.
@@ -1,108 +0,0 @@
1
- # Welcome to Our Documentation
2
-
3
- ## Overview
4
-
5
- This page demonstrates various markdown features and formatting options available in our
6
- documentation system. Whether you're writing technical documentation, guides, or tutorials, these
7
- examples will help you create beautiful and well-structured content.
8
-
9
- ### Key Features
10
-
11
- - **Rich Text Formatting**: Bold, italic, and code formatting
12
- - **Lists**: Ordered and unordered lists
13
- - **Code Blocks**: Syntax highlighting for multiple languages
14
- - **Tables**: Organized data presentation
15
- - **Images**: Visual content integration
16
- - **Links**: Internal and external references
17
-
18
- ## Text Formatting
19
-
20
- You can make text **bold** or _italic_ to emphasize important points. For technical terms, use
21
- `inline code` formatting.
22
-
23
- ### Code Examples
24
-
25
- Here's a simple JavaScript function:
26
-
27
- ```javascript
28
- function greet(name) {
29
- return `Hello, ${name}!`;
30
- }
31
-
32
- // Example usage
33
- console.log(greet("World"));
34
- ```
35
-
36
- And here's a Python example:
37
-
38
- ```python
39
- def calculate_fibonacci(n):
40
- if n <= 1:
41
- return n
42
- return calculate_fibonacci(n-1) + calculate_fibonacci(n-2)
43
-
44
- # Print first 10 Fibonacci numbers
45
- for i in range(10):
46
- print(calculate_fibonacci(i))
47
- ```
48
-
49
- ## Lists and Organization
50
-
51
- ### Unordered Lists
52
-
53
- - First item
54
- - Second item
55
- - Nested item
56
- - Another nested item
57
- - Third item
58
-
59
- ### Ordered Lists
60
-
61
- 1. First step
62
- 2. Second step
63
- 1. Sub-step A
64
- 2. Sub-step B
65
- 3. Third step
66
-
67
- ## Tables
68
-
69
- | Feature | Description | Status |
70
- | ----------- | --------------------- | ------ |
71
- | Markdown | Basic text formatting | ✅ |
72
- | Code Blocks | Syntax highlighting | ✅ |
73
- | Tables | Data organization | ✅ |
74
- | Images | Visual content | ✅ |
75
-
76
- ## Blockquotes
77
-
78
- > "The best way to predict the future is to implement it."
79
- >
80
- > — Alan Kay
81
-
82
- ## Links and References
83
-
84
- - [Internal Link](#overview)
85
- - [External Link](https://example.com)
86
- - [Documentation Home](/)
87
-
88
- ## Horizontal Rules
89
-
90
- ---
91
-
92
- ## Additional Tips
93
-
94
- 1. Use headings to create a clear hierarchy
95
- 2. Keep paragraphs short and focused
96
- 3. Include code examples when relevant
97
- 4. Use lists for better readability
98
- 5. Add tables for structured data
99
-
100
- ## Conclusion
101
-
102
- This example demonstrates the power and flexibility of markdown for creating beautiful
103
- documentation. Feel free to use these patterns in your own documentation to maintain consistency and
104
- readability.
105
-
106
- ---
107
-
108
- _Last updated: March 2024_