@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.
- package/LICENSE +21 -0
- package/README.md +318 -0
- package/bin/index.js +86 -0
- package/lib/index.d.ts +20 -0
- package/lib/index.js +454 -0
- package/package.json +41 -0
- package/sp-days-framework-create-sp-days-1.0.0.tgz +0 -0
- package/templates/addon-resources/resources/frontpage-collection/components/Columns.mdx +191 -0
- package/templates/addon-resources/resources/frontpage-collection/components/ContentBlock.mdx +126 -0
- package/templates/addon-resources/resources/frontpage-collection/components/CourseFeature.mdx +147 -0
- package/templates/addon-resources/resources/frontpage-collection/components/FancyHeader.mdx +76 -0
- package/templates/addon-resources/resources/frontpage-collection/components/GetStarted.mdx +222 -0
- package/templates/addon-resources/resources/frontpage-collection/components/HeroBanner.mdx +205 -0
- package/templates/addon-resources/resources/frontpage-collection/components/IconContainer.mdx +249 -0
- package/templates/addon-resources/resources/frontpage-collection/components/Iconify.mdx +228 -0
- package/templates/addon-resources/resources/frontpage-collection/components/_category_.yml +2 -0
- package/templates/addon-resources/resources/frontpage-collection/index.mdx +85 -0
- package/templates/addon-resources/resources/frontpage-collection/setup/index.mdx +185 -0
- package/templates/addon-resources/resources/index.mdx +35 -0
- package/templates/addon-resources/resources/interactive-tasks/creating-tasks.mdx +292 -0
- package/templates/addon-resources/resources/interactive-tasks/examples/_category_.yml +3 -0
- package/templates/addon-resources/resources/interactive-tasks/examples/advanced-usage.mdx +304 -0
- package/templates/addon-resources/resources/interactive-tasks/examples/basic-usage.mdx +128 -0
- package/templates/addon-resources/resources/interactive-tasks/index.mdx +93 -0
- package/templates/addon-resources/resources/interactive-tasks/setup/advanced-configuration.mdx +150 -0
- package/templates/addon-resources/resources/interactive-tasks/setup/index.mdx +174 -0
- package/templates/addon-resources/resources/interactive-tasks/task-progression.mdx +140 -0
- package/templates/addon-resources/resources/slidev-integration/index.mdx +106 -0
- package/templates/addon-resources/resources/slidev-integration/setup/advanced-configuration.mdx +144 -0
- package/templates/addon-resources/resources/slidev-integration/setup/index.mdx +200 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/index.mdx +105 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/_category_.yml +2 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/_category_.yml +2 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/center.mdx +33 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/default.mdx +59 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/content/full.mdx +49 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/_category_.yml +2 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image-left.mdx +37 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image-right.mdx +37 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/image/image.mdx +56 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/_category_.yml +2 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/three-cols-header.mdx +49 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/three-cols.mdx +47 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/two-cols-header.mdx +43 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/multi-column/two-cols.mdx +38 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/_category_.yml +2 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/cover.mdx +43 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/end.mdx +33 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/intro.mdx +49 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/section/section.mdx +41 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/_category_.yml +2 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/about-me.mdx +92 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/fact.mdx +47 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/quote.mdx +27 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/layouts/special/statement.mdx +28 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/setup/advanced-configuration.mdx +79 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/setup/index.mdx +104 -0
- package/templates/addon-resources/resources/sykehuspartner-theme/syntax-and-icons.mdx +89 -0
- package/templates/addon-slidev/package.json +54 -0
- package/templates/addon-slidev/slidev/creating-your-first-slidev.md +301 -0
- package/templates/addon-slidev/slidev/slidev-theme-sykehuspartner.md +403 -0
- package/templates/page-course/README.md +152 -0
- package/templates/page-course/course/index.mdx +7 -0
- package/templates/page-course/course/placeholder-advanced-usage.mdx +304 -0
- package/templates/page-course/course/placeholder-basic-usage.mdx +128 -0
- package/templates/page-course/docusaurus.config.ts +171 -0
- package/templates/page-course/example-github-pages.yml +66 -0
- package/templates/page-course/gitignore +20 -0
- package/templates/page-course/package.json +51 -0
- package/templates/page-course/src/css/sp-days-theme.scss +297 -0
- package/templates/page-course/src/pages/index.mdx +165 -0
- package/templates/page-course/static/.nojekyll +0 -0
- package/templates/page-course/static/img/favicon-navbar/github.svg +3 -0
- package/templates/page-course/static/img/favicon-navbar/sorost-logo-dark.svg +24 -0
- package/templates/page-course/static/img/favicon-navbar/sorost-logo-light.svg +24 -0
- package/templates/page-course/static/img/footer/sykehuspartner-dark.svg +37 -0
- package/templates/page-course/static/img/footer/sykehuspartner-light.svg +37 -0
- package/templates/page-course/static/img/sidebar/docusaurus.svg +17 -0
- package/templates/page-course/static/img/sidebar/slidev.svg +22 -0
- package/templates/page-course/static/img/sp-days-logo-color-dark.svg +70 -0
- package/templates/page-course/static/img/sp-days-logo-color-light.svg +70 -0
- package/templates/page-course/static/img/sp-days-logo-filled-invert.svg +11 -0
- package/templates/page-course/static/img/sp-days-logo-filled.svg +11 -0
- package/templates/page-course/static/img/sp-days-logo-outline.svg +19 -0
- package/templates/page-course/static/img/sp-days-plugin-color-dark.svg +57 -0
- package/templates/page-course/static/img/sp-days-plugin-color-light.svg +53 -0
- 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: ``
|
|
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!
|