@sp-days-framework/create-sp-days 1.0.4 → 1.1.0-beta1
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/README.md +14 -0
- package/bin/index.js +2 -0
- package/docs/advanced-config.mdx +387 -0
- package/docs/changelog.mdx +106 -0
- package/docs/index.mdx +205 -0
- package/docs/install.mdx +199 -0
- package/docs/sidebar-sections.mdx +268 -0
- package/docs/sp-days-plugin-color-light.svg +53 -0
- package/lib/.tsbuildinfo +1 -0
- package/lib/.tsbuildinfo-build +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +36 -7
- package/package.json +31 -7
- package/publish-package-docs.js +12 -0
- package/templates/addon-resources/resources/api-reference.mdx +132 -0
- package/templates/addon-resources/resources/best-practice.mdx +407 -0
- package/templates/addon-resources/resources/cheat-sheet.mdx +120 -0
- package/templates/addon-resources/resources/cli-reference.mdx +280 -0
- package/templates/addon-resources/resources/configuration-guide.mdx +211 -0
- package/templates/addon-resources/resources/environment-setup.mdx +317 -0
- package/templates/addon-resources/resources/faq.mdx +146 -0
- package/templates/addon-resources/resources/glossary.mdx +78 -0
- package/templates/addon-resources/resources/index.mdx +67 -16
- package/templates/addon-resources/resources/quick-start.mdx +193 -0
- package/templates/addon-resources/resources/troubleshooting.mdx +263 -0
- package/templates/addon-resources/resources/useful-links.mdx +61 -0
- package/templates/page-course/README.md +62 -0
- package/templates/page-course/docusaurus.config.ts +59 -11
- package/templates/page-course/package.json +12 -2
- package/templates/page-course/sidebarSections.js +118 -0
- package/tsconfig.base.client.json +10 -0
- package/tsconfig.base.json +71 -0
- package/tsconfig.build.json +9 -0
- package/sp-days-framework-create-sp-days-1.0.3.tgz +0 -0
- package/templates/addon-resources/resources/interactive-tasks/creating-tasks.mdx +0 -254
- package/templates/addon-resources/resources/interactive-tasks/examples/_category_.yml +0 -3
- package/templates/addon-resources/resources/interactive-tasks/examples/advanced-usage.mdx +0 -304
- package/templates/addon-resources/resources/interactive-tasks/examples/basic-usage.mdx +0 -128
- package/templates/addon-resources/resources/interactive-tasks/index.mdx +0 -93
- package/templates/addon-resources/resources/interactive-tasks/setup/advanced-configuration.mdx +0 -273
- package/templates/addon-resources/resources/interactive-tasks/setup/index.mdx +0 -120
- package/templates/addon-resources/resources/interactive-tasks/task-progression.mdx +0 -140
- package/templates/addon-resources/resources/slidev-integration/index.mdx +0 -106
- package/templates/addon-resources/resources/slidev-integration/setup/advanced-configuration.mdx +0 -144
- package/templates/addon-resources/resources/slidev-integration/setup/index.mdx +0 -200
- package/templates/addon-resources/resources/sykehuspartner-theme/index.mdx +0 -105
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/_category_.yml +0 -2
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/_category_.yml +0 -2
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/center.mdx +0 -33
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/default.mdx +0 -59
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/full.mdx +0 -49
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/_category_.yml +0 -2
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image-left.mdx +0 -37
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image-right.mdx +0 -37
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image.mdx +0 -56
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/_category_.yml +0 -2
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/three-cols-header.mdx +0 -49
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/three-cols.mdx +0 -47
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/two-cols-header.mdx +0 -43
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/two-cols.mdx +0 -38
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/_category_.yml +0 -2
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/cover.mdx +0 -43
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/end.mdx +0 -33
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/intro.mdx +0 -49
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/section.mdx +0 -41
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/_category_.yml +0 -2
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/about-me.mdx +0 -92
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/fact.mdx +0 -47
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/quote.mdx +0 -27
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/statement.mdx +0 -28
- package/templates/addon-resources/resources/sykehuspartner-theme/setup/advanced-configuration.mdx +0 -79
- package/templates/addon-resources/resources/sykehuspartner-theme/setup/index.mdx +0 -104
- package/templates/addon-resources/resources/sykehuspartner-theme/syntax-and-icons.mdx +0 -89
- package/templates/addon-slidev/package.json +0 -54
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_label: "Cheat Sheet"
|
|
3
|
+
sidebar_custom_props:
|
|
4
|
+
section: "Templates"
|
|
5
|
+
section_position: 1
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
{/*
|
|
9
|
+
|
|
10
|
+
Cheat Sheets provide concise, quick-reference information for the most common commands and patterns.
|
|
11
|
+
Focus on practical, copy-paste ready examples without extensive explanation. Keep it brief – use
|
|
12
|
+
CLI Reference for comprehensive documentation.
|
|
13
|
+
|
|
14
|
+
*/}
|
|
15
|
+
|
|
16
|
+
import Tabs from '@theme/Tabs';
|
|
17
|
+
import TabItem from '@theme/TabItem';
|
|
18
|
+
|
|
19
|
+
# Cheat Sheet Template
|
|
20
|
+
|
|
21
|
+
Quick reference for the most commonly used commands and patterns.
|
|
22
|
+
|
|
23
|
+
## Basic Operations
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# List all items
|
|
27
|
+
command list
|
|
28
|
+
|
|
29
|
+
# Show detailed information
|
|
30
|
+
command info <name>
|
|
31
|
+
|
|
32
|
+
# Create new item
|
|
33
|
+
command create <name>
|
|
34
|
+
|
|
35
|
+
# Delete an item
|
|
36
|
+
command delete <name>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Common Options
|
|
40
|
+
|
|
41
|
+
| Option | Description | Example |
|
|
42
|
+
|---------------|--------------------------------------|----------------------------|
|
|
43
|
+
| `-v, --verbose` | Enable verbose output | `command -v list` |
|
|
44
|
+
| `-o, --output` | Specify output format (json/yaml) | `command -o json list` |
|
|
45
|
+
| `-f, --force` | Skip confirmation prompts | `command -f delete <name>` |
|
|
46
|
+
| `-h, --help` | Show help information | `command -h` |
|
|
47
|
+
|
|
48
|
+
## Working with Configuration
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# View current configuration
|
|
52
|
+
command config show
|
|
53
|
+
|
|
54
|
+
# Set a configuration value
|
|
55
|
+
command config set key=value
|
|
56
|
+
|
|
57
|
+
# Reset to defaults
|
|
58
|
+
command config reset
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Filtering and Searching
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Filter by status
|
|
65
|
+
command list --status active
|
|
66
|
+
|
|
67
|
+
# Search by name
|
|
68
|
+
command list --name "search-term"
|
|
69
|
+
|
|
70
|
+
# Combine multiple filters
|
|
71
|
+
command list --status active --tag production
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Output Formatting
|
|
75
|
+
|
|
76
|
+
<Tabs>
|
|
77
|
+
<TabItem value="json" label="JSON">
|
|
78
|
+
|
|
79
|
+
**JSON Output**
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
command list --output json
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
</TabItem>
|
|
86
|
+
<TabItem value="yaml" label="YAML">
|
|
87
|
+
|
|
88
|
+
**YAML Output**
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
command list --output yaml
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
</TabItem>
|
|
95
|
+
<TabItem value="table" label="Table">
|
|
96
|
+
|
|
97
|
+
**Table Output**
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
command list --output table
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
</TabItem>
|
|
104
|
+
</Tabs>
|
|
105
|
+
|
|
106
|
+
## Advanced Usage
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# Batch operations
|
|
110
|
+
command delete item1 item2 item3
|
|
111
|
+
|
|
112
|
+
# Watch mode (continuous updates)
|
|
113
|
+
command watch list
|
|
114
|
+
|
|
115
|
+
# Export data
|
|
116
|
+
command export --format json > backup.json
|
|
117
|
+
|
|
118
|
+
# Import data
|
|
119
|
+
command import backup.json
|
|
120
|
+
```
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_label: "CLI Reference"
|
|
3
|
+
sidebar_custom_props:
|
|
4
|
+
section: "Templates"
|
|
5
|
+
section_position: 1
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
{/*
|
|
9
|
+
|
|
10
|
+
CLI Reference pages provide comprehensive documentation for command-line tools, including all
|
|
11
|
+
commands, subcommands, options, and flags. Organize by command hierarchy and include detailed
|
|
12
|
+
explanations of each option's behavior.
|
|
13
|
+
|
|
14
|
+
*/}
|
|
15
|
+
|
|
16
|
+
# CLI Reference Template
|
|
17
|
+
|
|
18
|
+
Complete reference for all command-line interface commands, options, and usage patterns.
|
|
19
|
+
|
|
20
|
+
## Global Options
|
|
21
|
+
|
|
22
|
+
These options are available for all commands:
|
|
23
|
+
|
|
24
|
+
| Option | Description |
|
|
25
|
+
|--------------------|------------------------------------------|
|
|
26
|
+
| `--version` | Display version information |
|
|
27
|
+
| `--help, -h` | Show help for any command |
|
|
28
|
+
| `--verbose, -v` | Enable verbose output |
|
|
29
|
+
| `--quiet, -q` | Suppress non-error output |
|
|
30
|
+
| `--config <path>` | Specify custom configuration file path |
|
|
31
|
+
| `--output, -o <format>` | Output format: `json`, `yaml`, `table` |
|
|
32
|
+
|
|
33
|
+
## Commands
|
|
34
|
+
|
|
35
|
+
### `init`
|
|
36
|
+
|
|
37
|
+
Initialize a new project or configuration.
|
|
38
|
+
|
|
39
|
+
**Usage:**
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
command init [options]
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**Options:**
|
|
46
|
+
|
|
47
|
+
| Option | Description | Default |
|
|
48
|
+
|---------------------|---------------------------------------|------------|
|
|
49
|
+
| `--name <name>` | Project name | Current directory name |
|
|
50
|
+
| `--template <type>` | Template to use (`basic`, `advanced`) | `basic` |
|
|
51
|
+
| `--force, -f` | Overwrite existing files | `false` |
|
|
52
|
+
|
|
53
|
+
**Examples:**
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Initialize with defaults
|
|
57
|
+
command init
|
|
58
|
+
|
|
59
|
+
# Initialize with custom name and template
|
|
60
|
+
command init --name my-project --template advanced
|
|
61
|
+
|
|
62
|
+
# Force initialization (overwrite existing)
|
|
63
|
+
command init --force
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### `create`
|
|
67
|
+
|
|
68
|
+
Create a new resource.
|
|
69
|
+
|
|
70
|
+
**Usage:**
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
command create <resource-type> <name> [options]
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**Parameters:**
|
|
77
|
+
|
|
78
|
+
| Parameter | Type | Required | Description | Default |
|
|
79
|
+
|-------------------|----------|----------|--------------------------------------|---------|
|
|
80
|
+
| `resource-type` | argument | Yes | Type of resource to create | - |
|
|
81
|
+
| `name` | argument | Yes | Name for the new resource | - |
|
|
82
|
+
| `--description <text>` | option | No | Resource description | - |
|
|
83
|
+
| `--tags <tags>` | option | No | Comma-separated tags | - |
|
|
84
|
+
| `--public` | option | No | Make resource publicly accessible | `false` |
|
|
85
|
+
|
|
86
|
+
**Examples:**
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
# Create a basic resource
|
|
90
|
+
command create item my-item
|
|
91
|
+
|
|
92
|
+
# Create with description and tags
|
|
93
|
+
command create item my-item --description "Sample item" --tags "tag1,tag2"
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### `list`
|
|
97
|
+
|
|
98
|
+
Display a list of resources.
|
|
99
|
+
|
|
100
|
+
**Usage:**
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
command list [resource-type] [options]
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**Options:**
|
|
107
|
+
|
|
108
|
+
| Option | Description | Default |
|
|
109
|
+
|-------------------------|------------------------------------|---------|
|
|
110
|
+
| `--filter <expression>` | Filter results by criteria | - |
|
|
111
|
+
| `--sort <field>` | Sort by field (`name`, `date`) | `name` |
|
|
112
|
+
| `--limit <number>` | Maximum number of results | `50` |
|
|
113
|
+
| `--all, -a` | Show all items (including archived)| `false` |
|
|
114
|
+
|
|
115
|
+
**Examples:**
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
# List all resources
|
|
119
|
+
command list
|
|
120
|
+
|
|
121
|
+
# List with filters
|
|
122
|
+
command list --filter "status=active" --sort date
|
|
123
|
+
|
|
124
|
+
# List all including archived
|
|
125
|
+
command list --all
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### `update`
|
|
129
|
+
|
|
130
|
+
Update an existing resource.
|
|
131
|
+
|
|
132
|
+
**Usage:**
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
command update <resource-id> [options]
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**Parameters:**
|
|
139
|
+
|
|
140
|
+
| Parameter | Type | Required | Description |
|
|
141
|
+
|-------------------|----------|----------|------------------------------|
|
|
142
|
+
| `resource-id` | argument | Yes | ID of resource to update |
|
|
143
|
+
| `--name <name>` | option | No | Update resource name |
|
|
144
|
+
| `--description <text>` | option | No | Update description |
|
|
145
|
+
| `--tags <tags>` | option | No | Update tags (overwrites all) |
|
|
146
|
+
| `--add-tag <tag>` | option | No | Add a single tag |
|
|
147
|
+
| `--remove-tag <tag>` | option | No | Remove a single tag |
|
|
148
|
+
|
|
149
|
+
**Examples:**
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
# Update name
|
|
153
|
+
command update 123 --name "New Name"
|
|
154
|
+
|
|
155
|
+
# Add tags
|
|
156
|
+
command update 123 --add-tag production --add-tag critical
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### `delete`
|
|
160
|
+
|
|
161
|
+
Delete one or more resources.
|
|
162
|
+
|
|
163
|
+
**Usage:**
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
command delete <resource-id>... [options]
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
**Parameters:**
|
|
170
|
+
|
|
171
|
+
| Parameter | Type | Required | Description | Default |
|
|
172
|
+
|-------------------|----------|----------|------------------------------------|---------|
|
|
173
|
+
| `resource-id` | argument | Yes | One or more resource IDs to delete | - |
|
|
174
|
+
| `--force, -f` | option | No | Skip confirmation prompt | `false` |
|
|
175
|
+
| `--recursive, -r` | option | No | Delete related resources | `false` |
|
|
176
|
+
|
|
177
|
+
**Examples:**
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
# Delete single resource (with confirmation)
|
|
181
|
+
command delete 123
|
|
182
|
+
|
|
183
|
+
# Delete multiple resources without confirmation
|
|
184
|
+
command delete 123 456 789 --force
|
|
185
|
+
|
|
186
|
+
# Delete with related resources
|
|
187
|
+
command delete 123 --recursive
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### `config`
|
|
191
|
+
|
|
192
|
+
Manage configuration settings.
|
|
193
|
+
|
|
194
|
+
**Usage:**
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
command config <action> [options]
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
**Subcommands:**
|
|
201
|
+
|
|
202
|
+
#### `config get`
|
|
203
|
+
|
|
204
|
+
Retrieve configuration value(s).
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
command config get [key]
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
#### `config set`
|
|
211
|
+
|
|
212
|
+
Set configuration value.
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
command config set <key> <value>
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
#### `config list`
|
|
219
|
+
|
|
220
|
+
List all configuration settings.
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
command config list
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
#### `config reset`
|
|
227
|
+
|
|
228
|
+
Reset configuration to defaults.
|
|
229
|
+
|
|
230
|
+
```bash
|
|
231
|
+
command config reset [--confirm]
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
**Examples:**
|
|
235
|
+
|
|
236
|
+
```bash
|
|
237
|
+
# Get specific value
|
|
238
|
+
command config get api.endpoint
|
|
239
|
+
|
|
240
|
+
# Set a value
|
|
241
|
+
command config set api.timeout 30
|
|
242
|
+
|
|
243
|
+
# View all settings
|
|
244
|
+
command config list
|
|
245
|
+
|
|
246
|
+
# Reset to defaults
|
|
247
|
+
command config reset --confirm
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
## Environment Variables
|
|
251
|
+
|
|
252
|
+
| Variable | Description | Default |
|
|
253
|
+
|--------------------|----------------------------------|-----------------|
|
|
254
|
+
| `COMMAND_API_KEY` | API authentication key | - |
|
|
255
|
+
| `COMMAND_ENDPOINT` | API endpoint URL | `https://api.example.com` |
|
|
256
|
+
| `COMMAND_TIMEOUT` | Request timeout in seconds | `30` |
|
|
257
|
+
| `COMMAND_LOG_LEVEL`| Logging level (`debug`, `info`, `error`) | `info` |
|
|
258
|
+
|
|
259
|
+
## Exit Codes
|
|
260
|
+
|
|
261
|
+
| Code | Description |
|
|
262
|
+
|------|--------------------------------------|
|
|
263
|
+
| 0 | Success |
|
|
264
|
+
| 1 | General error |
|
|
265
|
+
| 2 | Invalid arguments or options |
|
|
266
|
+
| 3 | Resource not found |
|
|
267
|
+
| 4 | Permission denied |
|
|
268
|
+
| 130 | Command interrupted (Ctrl+C) |
|
|
269
|
+
|
|
270
|
+
:::tip Shell Completion
|
|
271
|
+
Enable shell completion for better command-line experience:
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
# Bash
|
|
275
|
+
command completion bash > /etc/bash_completion.d/command
|
|
276
|
+
|
|
277
|
+
# Zsh
|
|
278
|
+
command completion zsh > ~/.zsh/completion/_command
|
|
279
|
+
```
|
|
280
|
+
:::
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_label: "Configuration Guide"
|
|
3
|
+
sidebar_custom_props:
|
|
4
|
+
section: "Templates"
|
|
5
|
+
section_position: 1
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
{/*
|
|
9
|
+
|
|
10
|
+
Configuration Guide pages explain how to configure and customize the technology through
|
|
11
|
+
configuration files, environment variables, or settings. Include complete, working examples
|
|
12
|
+
with explanations of key parameters and their effects.
|
|
13
|
+
|
|
14
|
+
*/}
|
|
15
|
+
|
|
16
|
+
import Tabs from '@theme/Tabs';
|
|
17
|
+
import TabItem from '@theme/TabItem';
|
|
18
|
+
|
|
19
|
+
# Configuration Guide Template
|
|
20
|
+
|
|
21
|
+
Learn how to configure and customize settings to meet your specific requirements.
|
|
22
|
+
|
|
23
|
+
## Configuration File Location
|
|
24
|
+
|
|
25
|
+
Configuration files are typically located in:
|
|
26
|
+
|
|
27
|
+
- **Project-level:** `./config.yml` or `./.config.yml`
|
|
28
|
+
- **User-level:** `~/.config/app/config.yml`
|
|
29
|
+
- **System-level:** `/etc/app/config.yml`
|
|
30
|
+
|
|
31
|
+
Configuration is loaded in order of precedence: project → user → system.
|
|
32
|
+
|
|
33
|
+
## Basic Configuration
|
|
34
|
+
|
|
35
|
+
<Tabs>
|
|
36
|
+
<TabItem value="yaml" label="YAML">
|
|
37
|
+
|
|
38
|
+
```yaml title="config.yml"
|
|
39
|
+
# Basic configuration example
|
|
40
|
+
app:
|
|
41
|
+
name: my-application
|
|
42
|
+
version: 1.0.0
|
|
43
|
+
environment: development
|
|
44
|
+
|
|
45
|
+
server:
|
|
46
|
+
host: localhost
|
|
47
|
+
port: 8080
|
|
48
|
+
timeout: 30
|
|
49
|
+
|
|
50
|
+
logging:
|
|
51
|
+
level: info
|
|
52
|
+
format: json
|
|
53
|
+
output: stdout
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
</TabItem>
|
|
57
|
+
<TabItem value="json" label="JSON">
|
|
58
|
+
|
|
59
|
+
```json title="config.json"
|
|
60
|
+
{
|
|
61
|
+
"app": {
|
|
62
|
+
"name": "my-application",
|
|
63
|
+
"version": "1.0.0",
|
|
64
|
+
"environment": "development"
|
|
65
|
+
},
|
|
66
|
+
"server": {
|
|
67
|
+
"host": "localhost",
|
|
68
|
+
"port": 8080,
|
|
69
|
+
"timeout": 30
|
|
70
|
+
},
|
|
71
|
+
"logging": {
|
|
72
|
+
"level": "info",
|
|
73
|
+
"format": "json",
|
|
74
|
+
"output": "stdout"
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
</TabItem>
|
|
80
|
+
</Tabs>
|
|
81
|
+
|
|
82
|
+
## Configuration Parameters
|
|
83
|
+
|
|
84
|
+
### Application Settings
|
|
85
|
+
|
|
86
|
+
| Parameter | Type | Default | Description |
|
|
87
|
+
|-------------------|---------|-------------|--------------------------------------|
|
|
88
|
+
| `app.name` | string | - | Application name |
|
|
89
|
+
| `app.version` | string | - | Application version |
|
|
90
|
+
| `app.environment` | string | `production`| Environment: `development`, `staging`, `production` |
|
|
91
|
+
| `app.debug` | boolean | `false` | Enable debug mode |
|
|
92
|
+
|
|
93
|
+
### Server Configuration
|
|
94
|
+
|
|
95
|
+
| Parameter | Type | Default | Description |
|
|
96
|
+
|------------------|---------|-------------|---------------------------------------|
|
|
97
|
+
| `server.host` | string | `0.0.0.0` | Server bind address |
|
|
98
|
+
| `server.port` | integer | `8080` | Server port number |
|
|
99
|
+
| `server.timeout` | integer | `30` | Request timeout in seconds |
|
|
100
|
+
| `server.tls` | boolean | `false` | Enable TLS/HTTPS |
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
## Advanced Configuration
|
|
104
|
+
|
|
105
|
+
### Database Connection
|
|
106
|
+
|
|
107
|
+
```yaml title="config.yml"
|
|
108
|
+
database:
|
|
109
|
+
driver: postgresql
|
|
110
|
+
host: db.example.com
|
|
111
|
+
port: 5432
|
|
112
|
+
name: myapp_db
|
|
113
|
+
username: dbuser
|
|
114
|
+
password: ${DB_PASSWORD} # Use environment variable
|
|
115
|
+
pool:
|
|
116
|
+
min: 5
|
|
117
|
+
max: 20
|
|
118
|
+
idle_timeout: 300
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Feature Flags
|
|
122
|
+
|
|
123
|
+
```yaml title="config.yml"
|
|
124
|
+
features:
|
|
125
|
+
new_ui: true
|
|
126
|
+
beta_api: false
|
|
127
|
+
experimental_cache: false
|
|
128
|
+
analytics:
|
|
129
|
+
enabled: true
|
|
130
|
+
provider: google-analytics
|
|
131
|
+
tracking_id: UA-XXXXX-Y
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Environment Variables
|
|
135
|
+
|
|
136
|
+
Configuration values can be overridden using environment variables:
|
|
137
|
+
|
|
138
|
+
| Environment Variable | Configuration Path | Example |
|
|
139
|
+
|-------------------------|-----------------------|--------------------------|
|
|
140
|
+
| `APP_NAME` | `app.name` | `APP_NAME=my-app` |
|
|
141
|
+
| `APP_ENVIRONMENT` | `app.environment` | `APP_ENVIRONMENT=prod` |
|
|
142
|
+
| `SERVER_PORT` | `server.port` | `SERVER_PORT=9000` |
|
|
143
|
+
| `LOG_LEVEL` | `logging.level` | `LOG_LEVEL=debug` |
|
|
144
|
+
| `DB_HOST` | `database.host` | `DB_HOST=db.prod.com` |
|
|
145
|
+
|
|
146
|
+
**Example:**
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
# Override configuration with environment variables
|
|
150
|
+
export SERVER_PORT=9000
|
|
151
|
+
export LOG_LEVEL=debug
|
|
152
|
+
./app start
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Configuration Validation
|
|
156
|
+
|
|
157
|
+
Validate your configuration file before deploying:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
# Check configuration syntax
|
|
161
|
+
command config validate
|
|
162
|
+
|
|
163
|
+
# Test configuration with dry-run
|
|
164
|
+
command start --dry-run
|
|
165
|
+
|
|
166
|
+
# Show effective configuration (with overrides)
|
|
167
|
+
command config show
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Common Patterns
|
|
171
|
+
|
|
172
|
+
### Using Configuration Templates
|
|
173
|
+
|
|
174
|
+
```yaml title="config.template.yml"
|
|
175
|
+
# Copy this file to config.yml and customize
|
|
176
|
+
app:
|
|
177
|
+
name: ${APP_NAME:my-app} # Default: my-app
|
|
178
|
+
environment: ${ENVIRONMENT:development}
|
|
179
|
+
|
|
180
|
+
database:
|
|
181
|
+
host: ${DB_HOST:localhost}
|
|
182
|
+
password: ${DB_PASSWORD} # Required, no default
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Splitting Configuration
|
|
186
|
+
|
|
187
|
+
```yaml title="config.yml"
|
|
188
|
+
# Main configuration file
|
|
189
|
+
includes:
|
|
190
|
+
- ./config/database.yml
|
|
191
|
+
- ./config/logging.yml
|
|
192
|
+
- ./config/features.yml
|
|
193
|
+
|
|
194
|
+
app:
|
|
195
|
+
name: my-application
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
```yaml title="config/database.yml"
|
|
199
|
+
database:
|
|
200
|
+
driver: postgresql
|
|
201
|
+
host: localhost
|
|
202
|
+
port: 5432
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
:::tip Configuration Best Practices
|
|
206
|
+
- Use environment variables for environment-specific values
|
|
207
|
+
- Keep configuration files in version control (except secrets)
|
|
208
|
+
- Document all configuration options with comments
|
|
209
|
+
- Validate configuration on application startup
|
|
210
|
+
- Use separate configs for development, staging, and production
|
|
211
|
+
:::
|