@sp-days-framework/create-sp-days 1.0.0

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 (87) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +318 -0
  3. package/bin/index.js +86 -0
  4. package/lib/index.d.ts +20 -0
  5. package/lib/index.js +454 -0
  6. package/package.json +41 -0
  7. package/sp-days-framework-create-sp-days-1.0.0.tgz +0 -0
  8. package/templates/addon-resources/resources/frontpage-collection/components/Columns.mdx +191 -0
  9. package/templates/addon-resources/resources/frontpage-collection/components/ContentBlock.mdx +126 -0
  10. package/templates/addon-resources/resources/frontpage-collection/components/CourseFeature.mdx +147 -0
  11. package/templates/addon-resources/resources/frontpage-collection/components/FancyHeader.mdx +76 -0
  12. package/templates/addon-resources/resources/frontpage-collection/components/GetStarted.mdx +222 -0
  13. package/templates/addon-resources/resources/frontpage-collection/components/HeroBanner.mdx +205 -0
  14. package/templates/addon-resources/resources/frontpage-collection/components/IconContainer.mdx +249 -0
  15. package/templates/addon-resources/resources/frontpage-collection/components/Iconify.mdx +228 -0
  16. package/templates/addon-resources/resources/frontpage-collection/components/_category_.yml +2 -0
  17. package/templates/addon-resources/resources/frontpage-collection/index.mdx +85 -0
  18. package/templates/addon-resources/resources/frontpage-collection/setup/index.mdx +185 -0
  19. package/templates/addon-resources/resources/index.mdx +35 -0
  20. package/templates/addon-resources/resources/interactive-tasks/creating-tasks.mdx +292 -0
  21. package/templates/addon-resources/resources/interactive-tasks/examples/_category_.yml +3 -0
  22. package/templates/addon-resources/resources/interactive-tasks/examples/advanced-usage.mdx +304 -0
  23. package/templates/addon-resources/resources/interactive-tasks/examples/basic-usage.mdx +128 -0
  24. package/templates/addon-resources/resources/interactive-tasks/index.mdx +93 -0
  25. package/templates/addon-resources/resources/interactive-tasks/setup/advanced-configuration.mdx +150 -0
  26. package/templates/addon-resources/resources/interactive-tasks/setup/index.mdx +174 -0
  27. package/templates/addon-resources/resources/interactive-tasks/task-progression.mdx +140 -0
  28. package/templates/addon-resources/resources/slidev-integration/index.mdx +106 -0
  29. package/templates/addon-resources/resources/slidev-integration/setup/advanced-configuration.mdx +144 -0
  30. package/templates/addon-resources/resources/slidev-integration/setup/index.mdx +200 -0
  31. package/templates/addon-resources/resources/sykehuspartner-theme/index.mdx +105 -0
  32. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/_category_.yml +2 -0
  33. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/_category_.yml +2 -0
  34. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/center.mdx +33 -0
  35. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/default.mdx +59 -0
  36. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/full.mdx +49 -0
  37. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/_category_.yml +2 -0
  38. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image-left.mdx +37 -0
  39. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image-right.mdx +37 -0
  40. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image.mdx +56 -0
  41. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/_category_.yml +2 -0
  42. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/three-cols-header.mdx +49 -0
  43. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/three-cols.mdx +47 -0
  44. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/two-cols-header.mdx +43 -0
  45. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/two-cols.mdx +38 -0
  46. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/_category_.yml +2 -0
  47. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/cover.mdx +43 -0
  48. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/end.mdx +33 -0
  49. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/intro.mdx +49 -0
  50. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/section.mdx +41 -0
  51. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/_category_.yml +2 -0
  52. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/about-me.mdx +92 -0
  53. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/fact.mdx +47 -0
  54. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/quote.mdx +27 -0
  55. package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/statement.mdx +28 -0
  56. package/templates/addon-resources/resources/sykehuspartner-theme/setup/advanced-configuration.mdx +79 -0
  57. package/templates/addon-resources/resources/sykehuspartner-theme/setup/index.mdx +104 -0
  58. package/templates/addon-resources/resources/sykehuspartner-theme/syntax-and-icons.mdx +89 -0
  59. package/templates/addon-slidev/package.json +54 -0
  60. package/templates/addon-slidev/slidev/creating-your-first-slidev.md +301 -0
  61. package/templates/addon-slidev/slidev/slidev-theme-sykehuspartner.md +403 -0
  62. package/templates/page-course/README.md +152 -0
  63. package/templates/page-course/course/index.mdx +7 -0
  64. package/templates/page-course/course/placeholder-advanced-usage.mdx +304 -0
  65. package/templates/page-course/course/placeholder-basic-usage.mdx +128 -0
  66. package/templates/page-course/docusaurus.config.ts +171 -0
  67. package/templates/page-course/example-github-pages.yml +66 -0
  68. package/templates/page-course/gitignore +20 -0
  69. package/templates/page-course/package.json +51 -0
  70. package/templates/page-course/src/css/sp-days-theme.scss +297 -0
  71. package/templates/page-course/src/pages/index.mdx +165 -0
  72. package/templates/page-course/static/.nojekyll +0 -0
  73. package/templates/page-course/static/img/favicon-navbar/github.svg +3 -0
  74. package/templates/page-course/static/img/favicon-navbar/sorost-logo-dark.svg +24 -0
  75. package/templates/page-course/static/img/favicon-navbar/sorost-logo-light.svg +24 -0
  76. package/templates/page-course/static/img/footer/sykehuspartner-dark.svg +37 -0
  77. package/templates/page-course/static/img/footer/sykehuspartner-light.svg +37 -0
  78. package/templates/page-course/static/img/sidebar/docusaurus.svg +17 -0
  79. package/templates/page-course/static/img/sidebar/slidev.svg +22 -0
  80. package/templates/page-course/static/img/sp-days-logo-color-dark.svg +70 -0
  81. package/templates/page-course/static/img/sp-days-logo-color-light.svg +70 -0
  82. package/templates/page-course/static/img/sp-days-logo-filled-invert.svg +11 -0
  83. package/templates/page-course/static/img/sp-days-logo-filled.svg +11 -0
  84. package/templates/page-course/static/img/sp-days-logo-outline.svg +19 -0
  85. package/templates/page-course/static/img/sp-days-plugin-color-dark.svg +57 -0
  86. package/templates/page-course/static/img/sp-days-plugin-color-light.svg +53 -0
  87. package/templates/page-course/tsconfig.json +8 -0
@@ -0,0 +1,89 @@
1
+ ---
2
+ title: Syntax Highlighting & Icons
3
+ sidebar_position: 1
4
+ ---
5
+
6
+ import Tabs from "@theme/Tabs";
7
+ import TabItem from "@theme/TabItem";
8
+
9
+ # Syntax Highlighting & Icons
10
+
11
+ ## Syntax Highlighting
12
+
13
+ The theme includes built-in syntax highlighting for 30+ programming languages powered by Shiki.
14
+
15
+ ### Supported Languages
16
+
17
+ - HTML, CSS, JavaScript, TypeScript, JSX, TSX, Vue, MDX
18
+ - Python, Java, C#, Go, Rust, Ruby, PHP
19
+ - Docker, Terraform, YAML, TOML, Shell Script, PowerShell
20
+ - SQL, JSON, JSONC, CSV, GraphQL
21
+ - Markdown, LaTeX, XML
22
+ - NGINX, INI, .env, Git commit/rebase, CODEOWNERS
23
+ - Lua, HCL, SCSS, Sass
24
+
25
+ ### Basic Usage
26
+
27
+ Use standard code blocks with language identifiers:
28
+
29
+ ````markdown
30
+ ```python
31
+ def hello_world():
32
+ print("Hello, Slidev!")
33
+ ```
34
+
35
+ ```javascript
36
+ const greeting = "Hello, World!";
37
+ console.log(greeting);
38
+ ```
39
+
40
+ ```bash
41
+ docker run -d -p 8080:80 nginx
42
+ ```
43
+ ````
44
+
45
+ ## Icon Support
46
+
47
+ The theme includes the VSCode Icons collection for technical presentations.
48
+
49
+ ### Icon Discovery
50
+
51
+ Icons are automatically scanned from your markdown files and included in the build. Browse the full collection at [VSCode Icons](https://github.com/vscode-icons/vscode-icons).
52
+
53
+ ### Using VSCode Icons
54
+
55
+ Use the tilde syntax to include icons inline:
56
+
57
+ ```markdown
58
+ ---
59
+ layout: default
60
+ ---
61
+
62
+ # Technologies Used
63
+
64
+ ~i-vscode-icons:file-type-docker~ Docker
65
+
66
+ ~i-vscode-icons:file-type-python~ Python
67
+
68
+ ~i-vscode-icons:file-type-typescript-official~ TypeScript
69
+
70
+ ~i-vscode-icons:file-type-kubernetes~ Kubernetes
71
+ ```
72
+
73
+ ### Common VSCode Icons
74
+
75
+ | Icon Syntax | Description |
76
+ |-------------|-------------|
77
+ | `~i-vscode-icons:file-type-docker~` | Docker |
78
+ | `~i-vscode-icons:file-type-python~` | Python |
79
+ | `~i-vscode-icons:file-type-typescript-official~` | TypeScript |
80
+ | `~i-vscode-icons:file-type-javascript-official~` | JavaScript |
81
+ | `~i-vscode-icons:file-type-vue~` | Vue.js |
82
+ | `~i-vscode-icons:file-type-react~` | React |
83
+ | `~i-vscode-icons:file-type-kubernetes~` | Kubernetes |
84
+ | `~i-vscode-icons:file-type-terraform~` | Terraform |
85
+ | `~i-vscode-icons:file-type-yaml~` | YAML |
86
+ | `~i-vscode-icons:file-type-json~` | JSON |
87
+ | `~i-vscode-icons:file-type-markdown~` | Markdown |
88
+ | `~i-vscode-icons:file-type-git~` | Git |
89
+
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "<%= projectName %>",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "docusaurus": "docusaurus",
7
+ "start": "docusaurus start",
8
+ "build": "docusaurus build",
9
+ "swizzle": "docusaurus swizzle",
10
+ "deploy": "docusaurus deploy",
11
+ "clear": "docusaurus clear",
12
+ "serve": "docusaurus serve",
13
+ "slidev": "slidev",
14
+ "write-translations": "docusaurus write-translations",
15
+ "write-heading-ids": "docusaurus write-heading-ids",
16
+ "typecheck": "tsc"
17
+ },
18
+ "dependencies": {
19
+ "@docusaurus/core": "^3.9.2",
20
+ "@docusaurus/preset-classic": "^3.9.2",
21
+ "@docusaurus/theme-mermaid": "^3.9.2",
22
+ "@mdx-js/react": "^3.0.0",
23
+ "@sp-days-framework/docusaurus-frontpage-collection": "^1.0.0",
24
+ "@sp-days-framework/docusaurus-plugin-interactive-tasks": "^1.0.0",
25
+ "@sp-days-framework/docusaurus-plugin-slidev": "^1.0.0",
26
+ "@sp-days-framework/slidev-theme-sykehuspartner": "^1.0.0",
27
+ "clsx": "^2.0.0",
28
+ "docusaurus-plugin-sass": "^0.2.6",
29
+ "prism-react-renderer": "^2.3.0",
30
+ "react": "^19.0.0",
31
+ "react-dom": "^19.0.0"
32
+ },
33
+ "devDependencies": {
34
+ "@docusaurus/module-type-aliases": "^3.9.2",
35
+ "@docusaurus/tsconfig": "^3.9.2",
36
+ "@docusaurus/types": "^3.9.2",
37
+ "typescript": "~5.6.2"
38
+ },
39
+ "browserslist": {
40
+ "production": [
41
+ ">0.5%",
42
+ "not dead",
43
+ "not op_mini all"
44
+ ],
45
+ "development": [
46
+ "last 3 chrome version",
47
+ "last 3 firefox version",
48
+ "last 5 safari version"
49
+ ]
50
+ },
51
+ "engines": {
52
+ "node": ">=20.0"
53
+ }
54
+ }
@@ -0,0 +1,301 @@
1
+ ---
2
+ theme: "@sp-days-framework/slidev-theme-sykehuspartner"
3
+ title: Creating Your First Slidev Presentation
4
+ description: Learn essential Slidev features and how to create engaging presentations
5
+ layout: cover
6
+ ---
7
+
8
+ # Creating Your First Slidev Presentation
9
+
10
+ ## Essential Features and Best Practices
11
+
12
+ ---
13
+ layout: two-cols-header
14
+ ---
15
+
16
+ # Frontmatter Basics
17
+
18
+ Every Slidev presentation starts with frontmatter configuration:
19
+
20
+ ::left::
21
+
22
+
23
+ **Global Settings** (first slide):
24
+ - `theme` - Which theme to use
25
+ - `title` - Presentation title
26
+ - `description` - Brief description
27
+ - `author`, `keywords` - Metadata
28
+
29
+ ```yaml
30
+ ---
31
+ theme: "@sp-days-framework/slidev-theme-sykehuspartner"
32
+ title: My Presentation
33
+ description: A brief description
34
+ author: Your Name
35
+ layout: cover
36
+ ---
37
+
38
+ # First Slide
39
+ ```
40
+
41
+ ::right::
42
+
43
+
44
+ **Per-Slide Settings** (subsequent slides):
45
+ - `layout` - Layout for this slide
46
+ - `logo` - Show/hide logo
47
+ - Custom layout parameters
48
+
49
+ ```yaml
50
+ ---
51
+ layout: default
52
+ ---
53
+
54
+ # Subsequent Slide
55
+ ```
56
+
57
+ ---
58
+ layout: two-cols-header
59
+ ---
60
+
61
+ # Slide Separators
62
+
63
+ Slides are separated by three dashes (`---`):
64
+
65
+ ::left::
66
+
67
+ ```markdown
68
+ ---
69
+ # First Slide
70
+
71
+ Content here
72
+
73
+ ---
74
+ # Second Slide
75
+
76
+ More content
77
+
78
+ ---
79
+ layout: two-cols
80
+ ---
81
+
82
+ # Third Slide with Layout
83
+ ```
84
+
85
+ ::right::
86
+
87
+ **Tips:**
88
+
89
+ - Always use `---` with blank lines around it
90
+ - Frontmatter goes immediately after `---`
91
+ - Leave blank line before content
92
+
93
+ ---
94
+ layout: three-cols-header
95
+ ---
96
+
97
+ # Markdown Support
98
+
99
+ Slidev supports all standard Markdown features:
100
+
101
+ ::left::
102
+
103
+ **Text Formatting:**
104
+ - *Italic* with `*text*` or `_text_`
105
+ - **Bold** with `**text**`
106
+ - ***Bold italic*** with `***text***`
107
+ - `Code` with backticks
108
+
109
+ ::middle::
110
+
111
+ **Lists:**
112
+ - Unordered lists with `-` or `*`
113
+ - Ordered lists with `1.`, `2.`, etc.
114
+ - Nested lists with indentation
115
+
116
+ ::right::
117
+
118
+ **Links and Images:**
119
+ - Links: `[text](url)`
120
+ - Images: `![alt](path)`
121
+
122
+ ---
123
+
124
+ # Code Highlighting
125
+
126
+ Slidev provides powerful code highlighting:
127
+
128
+ **Language Support:**
129
+ ```python
130
+ # Specify language for syntax highlighting
131
+ def hello():
132
+ return "Python works too!"
133
+ ```
134
+
135
+ **Line Highlighting:**
136
+ ```javascript {2,4-6}
137
+ const a = 1
138
+ const b = 2 // highlighted
139
+ const c = 3
140
+ const d = 4 // highlighted
141
+ const e = 5 // highlighted
142
+ const f = 6 // highlighted
143
+ ```
144
+
145
+ ---
146
+ layout: two-cols-header
147
+ ---
148
+
149
+ # Presenter Notes
150
+
151
+ Add notes visible only in presenter mode
152
+
153
+ ::left::
154
+
155
+ ```markdown
156
+ ---
157
+ # Slide Title
158
+
159
+ Visible content for the audience
160
+
161
+ <!--
162
+ These are presenter notes.
163
+ Only visible in presenter mode.
164
+
165
+ Tips for this slide:
166
+ - Emphasize the main point
167
+ - Ask if there are questions
168
+ - Time: 2 minutes
169
+ -->
170
+ ```
171
+
172
+ ::right::
173
+
174
+ **Access Presenter Mode:**
175
+
176
+ - Press "Presenter Mode" button during presentation
177
+ - Opens second window with notes, next slide, and timer
178
+ - Perfect for rehearsing and presenting
179
+
180
+ <!--
181
+ These are presenter notes.
182
+ Only visible in presenter mode (press 'o' to open).
183
+
184
+ Tips for this slide:
185
+ - Emphasize the main point
186
+ - Ask if there are questions
187
+ - Time: 2 minutes
188
+ -->
189
+
190
+ ---
191
+ layout: two-cols-header
192
+ transition: slide-left
193
+ ---
194
+
195
+ # Transitions
196
+
197
+ Add smooth transitions between slides
198
+
199
+ ::left::
200
+
201
+ **Available Transitions:**
202
+
203
+ - `slide-left`, `slide-right`, `slide-up`, `slide-down`
204
+ - `fade` - Fade in/out
205
+ - `fade-out` - Only fade out
206
+ - `zoom` - Zoom effect
207
+ - `none` - No transition
208
+
209
+ ::right::
210
+
211
+ ```yaml
212
+ ---
213
+ transition: slide-left
214
+ ---
215
+
216
+ # This Slide
217
+
218
+ Will slide in from the right
219
+ ```
220
+
221
+ You can also set a global transition in the first slide's frontmatter.
222
+
223
+ ---
224
+ layout: two-cols-header
225
+ ---
226
+
227
+ # Icons with UnoCSS
228
+
229
+ The theme includes icon support based on Iconify [VSCode Icons](https://icon-sets.iconify.design/vscode-icons/)
230
+
231
+ ::left::
232
+
233
+ ````markdown
234
+
235
+ ```docker [dockerfile ~i-vscode-icons:file-type-docker~]
236
+ FROM python:3.13
237
+ ```
238
+
239
+ ```python [hello.py ~i-vscode-icons:file-type-python~]
240
+ print ('Hello, world!')
241
+ ```
242
+
243
+ ```yaml [play.yml ~i-vscode-icons:file-type-ansible~]
244
+ - name: Update web servers
245
+ hosts: webservers
246
+ remote_user: root
247
+ ```
248
+ ````
249
+
250
+ ::right::
251
+
252
+ ```docker [dockerfile ~i-vscode-icons:file-type-docker~]
253
+ FROM python:3.13
254
+ ```
255
+
256
+ ```python [hello_world.py ~i-vscode-icons:file-type-python~]
257
+ print ('Hello, world!')
258
+ ```
259
+
260
+ ```yaml [play.yml ~i-vscode-icons:file-type-ansible~]
261
+ - name: Update web servers
262
+ hosts: webservers
263
+ remote_user: root
264
+ ```
265
+
266
+ ---
267
+ layout: three-cols-header
268
+ ---
269
+
270
+ # Best Practices
271
+
272
+ ::left::
273
+
274
+ **Content:**
275
+
276
+ - One main idea per slide
277
+ - Use bullet points sparingly (3-5 max)
278
+ - Images and code over text walls
279
+ - Consistent terminology
280
+
281
+ ::middle::
282
+
283
+ **Design:**
284
+
285
+ - Choose appropriate layouts
286
+ - Maintain visual hierarchy
287
+ - Use animations purposefully
288
+ - Test in both light and dark modes
289
+
290
+ ::right::
291
+
292
+ **Technical:**
293
+ - Keep code examples short
294
+ - Use syntax highlighting
295
+ - Test all transitions
296
+
297
+ ---
298
+ layout: end
299
+ ---
300
+
301
+ # Happy Presenting!