@jet-w/astro-blog 0.2.0 → 0.2.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 (121) hide show
  1. package/dist/{chunk-HVQKQN6B.js → chunk-6D3XRDNY.js} +1 -1
  2. package/dist/{chunk-ATRISB7B.js → chunk-A2E2VSAQ.js} +43 -3
  3. package/dist/chunk-DAH2XP4W.js +154 -0
  4. package/dist/{chunk-AZHCNNAC.js → chunk-PG43JO4O.js} +1 -153
  5. package/dist/chunk-PZICDGJG.js +69 -0
  6. package/dist/chunk-Z3O3JK56.js +186 -0
  7. package/dist/config/index.d.ts +2 -2
  8. package/dist/config/index.js +9 -7
  9. package/dist/{i18n-5H4W145i.d.ts → i18n-DYYPTq4o.d.ts} +21 -1
  10. package/dist/index.d.ts +10 -184
  11. package/dist/index.js +37 -210
  12. package/dist/integration.d.ts +2 -2
  13. package/dist/integration.js +2 -2
  14. package/dist/{sidebar-Da-W_4Lr.d.ts → sidebar-DNdiCKBw.d.ts} +1 -1
  15. package/dist/utils/i18n.d.ts +133 -0
  16. package/dist/utils/i18n.js +49 -0
  17. package/dist/utils/sidebar.d.ts +1 -1
  18. package/dist/utils/useI18n.d.ts +74 -0
  19. package/dist/utils/useI18n.js +15 -0
  20. package/package.json +9 -1
  21. package/src/components/blog/FloatingToc.vue +11 -3
  22. package/src/components/blog/Hero.astro +17 -2
  23. package/src/components/blog/NavigationTabs.vue +46 -15
  24. package/src/components/blog/PostCard.astro +28 -10
  25. package/src/components/blog/RelatedPosts.astro +23 -7
  26. package/src/components/blog/TableOfContents.astro +10 -4
  27. package/src/components/blog/TagCloud.astro +4 -3
  28. package/src/components/home/FeaturedPostsSection.astro +22 -6
  29. package/src/components/home/QuickNavSection.astro +33 -4
  30. package/src/components/home/RecentPostsSection.astro +22 -6
  31. package/src/components/home/StatsSection.astro +24 -6
  32. package/src/components/layout/Header.astro +9 -5
  33. package/src/components/layout/Sidebar.astro +14 -11
  34. package/src/components/ui/SearchBox.vue +13 -5
  35. package/src/components/ui/SearchInterface.vue +49 -25
  36. package/src/pages/archives/[year]/[month].astro +36 -17
  37. package/src/pages/archives/index.astro +36 -20
  38. package/src/pages/categories/[category].astro +33 -16
  39. package/src/pages/categories/index.astro +37 -14
  40. package/src/pages/posts/[...slug].astro +125 -18
  41. package/src/pages/posts/index.astro +59 -37
  42. package/src/pages/posts/page/[page].astro +65 -27
  43. package/src/pages/search.astro +50 -14
  44. package/src/pages/slides/index.astro +25 -6
  45. package/src/pages/tags/[tag].astro +32 -15
  46. package/src/pages/tags/index.astro +39 -16
  47. package/src/plugins/remark-containers.mjs +351 -322
  48. package/src/plugins/remark-protect-code.mjs +69 -0
  49. package/src/styles/global.css +35 -1
  50. package/templates/default/.claude/ralph-loop.local.md +48 -0
  51. package/templates/default/astro.config.mjs +13 -4
  52. package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/01-intro.md +1 -1
  53. package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/02-install.md +1 -1
  54. package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/03-create-post.md +1 -1
  55. package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/04-structure.md +1 -1
  56. package/templates/default/content/posts/blog_docs_en/01.get-started/05-deploy.md +208 -0
  57. package/templates/default/content/posts/blog_docs_en/{get-started → 01.get-started}/README.md +1 -1
  58. package/templates/default/content/posts/blog_docs_en/02.guide/02-containers.md +245 -0
  59. package/templates/default/content/posts/blog_docs_en/{guide/markdown → 02.guide}/03-code-blocks.md +2 -1
  60. package/templates/default/content/posts/blog_docs_en/{guide/features/01-mermaid.md → 02.guide/03-mermaid.md} +1 -1
  61. package/templates/default/content/posts/blog_docs_en/{guide/features → 02.guide}/04-icons.md +4 -2
  62. package/templates/default/content/posts/blog_docs_en/{guide/features/02-latex.md → 02.guide/06-latex.md} +1 -1
  63. package/templates/default/content/posts/blog_docs_en/{guide/features/03-video.md → 02.guide/07-video.md} +1 -1
  64. package/templates/default/content/posts/blog_docs_en/02.guide/08-slides.md +359 -0
  65. package/templates/default/content/posts/blog_docs_en/{guide/markdown → 02.guide}/README.md +22 -3
  66. package/templates/default/content/posts/blog_docs_en/{config → 03.config}/01-site.md +1 -1
  67. package/templates/default/content/posts/blog_docs_en/{config → 03.config}/02-sidebar.md +1 -1
  68. package/templates/default/content/posts/blog_docs_en/{config → 03.config}/03-i18n.md +88 -24
  69. package/templates/default/content/posts/blog_docs_en/{config → 03.config}/README.md +1 -1
  70. package/templates/default/content/posts/blog_docs_en/README.md +2 -1
  71. package/templates/default/content/posts/blog_docs_zh/01.get-started/01-intro.md +81 -0
  72. package/templates/default/content/posts/blog_docs_zh/01.get-started/02-install.md +137 -0
  73. package/templates/default/content/posts/blog_docs_zh/01.get-started/03-create-post.md +176 -0
  74. package/templates/default/content/posts/blog_docs_zh/01.get-started/04-structure.md +173 -0
  75. package/templates/default/content/posts/blog_docs_zh/01.get-started/05-deploy.md +208 -0
  76. package/templates/default/content/posts/blog_docs_zh/01.get-started/README.md +52 -0
  77. package/templates/default/content/posts/blog_docs_zh/02.guide/02-containers.md +245 -0
  78. package/templates/default/content/posts/blog_docs_zh/02.guide/03-code-blocks.md +206 -0
  79. package/templates/default/content/posts/blog_docs_zh/02.guide/03-mermaid.md +194 -0
  80. package/templates/default/content/posts/blog_docs_zh/02.guide/04-icons.md +229 -0
  81. package/templates/default/content/posts/blog_docs_zh/02.guide/06-latex.md +233 -0
  82. package/templates/default/content/posts/blog_docs_zh/02.guide/07-video.md +184 -0
  83. package/templates/default/content/posts/blog_docs_zh/02.guide/08-slides.md +359 -0
  84. package/templates/default/content/posts/blog_docs_zh/02.guide/README.md +213 -0
  85. package/templates/default/content/posts/blog_docs_zh/03.config/01-site.md +208 -0
  86. package/templates/default/content/posts/blog_docs_zh/03.config/02-sidebar.md +240 -0
  87. package/templates/default/content/posts/blog_docs_zh/03.config/03-i18n.md +348 -0
  88. package/templates/default/content/posts/blog_docs_zh/03.config/README.md +85 -0
  89. package/templates/default/content/posts/blog_docs_zh/README.md +78 -0
  90. package/templates/default/package.dev.json +31 -0
  91. package/templates/default/package.json +1 -1
  92. package/templates/default/src/config/locales/en/index.ts +5 -1
  93. package/templates/default/src/config/locales/en/menu.ts +3 -1
  94. package/templates/default/src/config/locales/en/sidebar.ts +18 -2
  95. package/templates/default/src/config/locales/en/site.ts +1 -1
  96. package/templates/default/src/config/locales/en/ui.ts +29 -0
  97. package/templates/default/src/config/locales/zh-CN/index.ts +5 -1
  98. package/templates/default/src/config/locales/zh-CN/menu.ts +7 -5
  99. package/templates/default/src/config/locales/zh-CN/sidebar.ts +22 -6
  100. package/templates/default/src/config/locales/zh-CN/site.ts +2 -2
  101. package/templates/default/src/config/locales/zh-CN/ui.ts +29 -0
  102. package/templates/default/src/config/site.ts +2 -2
  103. package/templates/default/src/content.config.ts +15 -3
  104. package/templates/default/content/posts/blog_docs/01-quick-start.md +0 -162
  105. package/templates/default/content/posts/blog_docs/02-frontmatter.md +0 -277
  106. package/templates/default/content/posts/blog_docs/03-markdown-basic.md +0 -350
  107. package/templates/default/content/posts/blog_docs/04-containers.md +0 -331
  108. package/templates/default/content/posts/blog_docs/05-code-blocks.md +0 -388
  109. package/templates/default/content/posts/blog_docs/06-mermaid.md +0 -431
  110. package/templates/default/content/posts/blog_docs/07-video.md +0 -243
  111. package/templates/default/content/posts/blog_docs/08-latex.md +0 -382
  112. package/templates/default/content/posts/blog_docs/09-icons.md +0 -326
  113. package/templates/default/content/posts/blog_docs/10-sidebar.md +0 -445
  114. package/templates/default/content/posts/blog_docs/11-config.md +0 -334
  115. package/templates/default/content/posts/blog_docs/12-i18n.md +0 -355
  116. package/templates/default/content/posts/blog_docs/12-slides.mdx +0 -552
  117. package/templates/default/content/posts/blog_docs/README.md +0 -152
  118. package/templates/default/content/posts/blog_docs_en/get-started/05-deploy.md +0 -197
  119. package/templates/default/content/posts/blog_docs_en/guide/README.md +0 -59
  120. package/templates/default/content/posts/blog_docs_en/guide/features/README.md +0 -51
  121. package/templates/default/content/posts/blog_docs_en/guide/markdown/02-containers.md +0 -226
@@ -0,0 +1,245 @@
1
+ ---
2
+ title: Containers
3
+ description: Use callout boxes for tips, warnings, and important information
4
+ pubDate: 2025-01-01
5
+ author: jet-w
6
+ categories:
7
+ - Documentation
8
+ tags:
9
+ - Markdown
10
+ - Containers
11
+ ---
12
+
13
+ # Containers
14
+
15
+ Containers are special callout boxes that help highlight important information.
16
+
17
+ ## Basic Syntax
18
+
19
+ ```markdown
20
+ ::: type
21
+ Content goes here
22
+ :::
23
+ ```
24
+
25
+ ## Container Types
26
+
27
+ ### Tip
28
+
29
+ For helpful suggestions:
30
+
31
+ ```markdown
32
+ ::: tip
33
+ This is a helpful tip for the reader.
34
+ :::
35
+ ```
36
+
37
+ <div class="container-tip custom-container" data-container-type="tip">
38
+ <div class="container-title">Tip</div>
39
+ <div class="container-content">
40
+ <p>This is a helpful tip for the reader.</p>
41
+ </div>
42
+ </div>
43
+
44
+ ### Info
45
+
46
+ For informational notes:
47
+
48
+ ```markdown
49
+ ::: info
50
+ Here's some additional information.
51
+ :::
52
+ ```
53
+
54
+ <div class="container-info custom-container" data-container-type="info">
55
+ <div class="container-title">Info</div>
56
+ <div class="container-content">
57
+ <p>Here's some additional information.</p>
58
+ </div>
59
+ </div>
60
+
61
+ ### Warning
62
+
63
+ For things to be careful about:
64
+
65
+ ```markdown
66
+ ::: warning
67
+ Be careful with this operation.
68
+ :::
69
+ ```
70
+
71
+ <div class="container-warning custom-container" data-container-type="warning">
72
+ <div class="container-title">Warning</div>
73
+ <div class="container-content">
74
+ <p>Be careful with this operation.</p>
75
+ </div>
76
+ </div>
77
+
78
+ ### Danger
79
+
80
+ For critical warnings:
81
+
82
+ ```markdown
83
+ ::: danger
84
+ This action cannot be undone!
85
+ :::
86
+ ```
87
+
88
+ <div class="container-danger custom-container" data-container-type="danger">
89
+ <div class="container-title">Danger</div>
90
+ <div class="container-content">
91
+ <p>This action cannot be undone!</p>
92
+ </div>
93
+ </div>
94
+
95
+ ### Note
96
+
97
+ For general notes:
98
+
99
+ ```markdown
100
+ ::: note
101
+ A side note for the reader.
102
+ :::
103
+ ```
104
+
105
+ <div class="container-note custom-container" data-container-type="note">
106
+ <div class="container-title">Note</div>
107
+ <div class="container-content">
108
+ <p>A side note for the reader.</p>
109
+ </div>
110
+ </div>
111
+
112
+ ## Custom Titles
113
+
114
+ Add a custom title after the type:
115
+
116
+ ```markdown
117
+ ::: tip Pro Tip
118
+ This container has a custom title.
119
+ :::
120
+ ```
121
+
122
+ <div class="container-tip custom-container" data-container-type="tip">
123
+ <div class="container-title">Pro Tip</div>
124
+ <div class="container-content">
125
+ <p>This container has a custom title.</p>
126
+ </div>
127
+ </div>
128
+
129
+ ```markdown
130
+ ::: warning Security Notice
131
+ Always validate user input!
132
+ :::
133
+ ```
134
+
135
+ <div class="container-warning custom-container" data-container-type="warning">
136
+ <div class="container-title">Security Notice</div>
137
+ <div class="container-content">
138
+ <p>Always validate user input!</p>
139
+ </div>
140
+ </div>
141
+
142
+ ## Rich Content
143
+
144
+ Containers support full Markdown inside:
145
+
146
+ ```markdown
147
+ ::: info Features
148
+ This blog supports:
149
+ - **Markdown** formatting
150
+ - `Code` snippets
151
+ - [Links](https://example.com)
152
+ :::
153
+ ```
154
+
155
+ <div class="container-info custom-container" data-container-type="info">
156
+ <div class="container-title">Features</div>
157
+ <div class="container-content">
158
+ <p>This blog supports:</p>
159
+ <ul>
160
+ <li><strong>Markdown</strong> formatting</li>
161
+ <li><code>Code</code> snippets</li>
162
+ <li><a href="https://example.com">Links</a></li>
163
+ </ul>
164
+ </div>
165
+ </div>
166
+
167
+ ## Details (Collapsible)
168
+
169
+ Create expandable sections:
170
+
171
+ ```markdown
172
+ ::: details Click to expand
173
+ This content is hidden by default.
174
+ You can put lots of content here.
175
+ :::
176
+ ```
177
+
178
+ <details class="container-details custom-container" data-container-type="details">
179
+ <summary class="container-title">Click to expand</summary>
180
+ <div class="container-content">
181
+ <p>This content is hidden by default.</p>
182
+ <p>You can put lots of content here.</p>
183
+ </div>
184
+ </details>
185
+
186
+ ### Details with Code
187
+
188
+ ```markdown
189
+ ::: details View the solution
190
+ function solve() {
191
+ return 42;
192
+ }
193
+ :::
194
+ ```
195
+
196
+ <details class="container-details custom-container" data-container-type="details">
197
+ <summary class="container-title">View the solution</summary>
198
+ <div class="container-content">
199
+
200
+ ```javascript
201
+ function solve() {
202
+ return 42;
203
+ }
204
+ ```
205
+
206
+ </div>
207
+ </details>
208
+
209
+ ## Best Practices
210
+
211
+ <div class="container-tip custom-container" data-container-type="tip">
212
+ <div class="container-title">When to Use Containers</div>
213
+ <div class="container-content">
214
+ <ul>
215
+ <li><strong>tip</strong> - Helpful suggestions, best practices</li>
216
+ <li><strong>info</strong> - Background information, context</li>
217
+ <li><strong>warning</strong> - Potential issues, things to watch</li>
218
+ <li><strong>danger</strong> - Critical errors, data loss risks</li>
219
+ <li><strong>note</strong> - General observations</li>
220
+ <li><strong>details</strong> - Optional content, long examples</li>
221
+ </ul>
222
+ </div>
223
+ </div>
224
+
225
+ <div class="container-warning custom-container" data-container-type="warning">
226
+ <div class="container-title">Don't Overuse</div>
227
+ <div class="container-content">
228
+ <p>Too many containers can be distracting. Use them sparingly for truly important information.</p>
229
+ </div>
230
+ </div>
231
+
232
+ ## Quick Reference
233
+
234
+ | Type | Syntax | Use Case |
235
+ |------|--------|----------|
236
+ | tip | `::: tip` | Helpful suggestions |
237
+ | info | `::: info` | Additional information |
238
+ | warning | `::: warning` | Cautions |
239
+ | danger | `::: danger` | Critical warnings |
240
+ | note | `::: note` | Side notes |
241
+ | details | `::: details` | Collapsible content |
242
+
243
+ ---
244
+
245
+ Next: Master [Code Blocks](./03-code-blocks) for beautiful code snippets.
@@ -2,7 +2,7 @@
2
2
  title: Code Blocks
3
3
  description: Syntax highlighting, line numbers, and code display features
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags:
@@ -199,6 +199,7 @@ Show code changes:
199
199
  2. **Keep examples focused** - show only relevant code
200
200
  3. **Add comments** to explain complex logic
201
201
  4. **Test your code** - ensure examples actually work
202
+
202
203
  :::
203
204
 
204
205
  ---
@@ -2,7 +2,7 @@
2
2
  title: Mermaid Diagrams
3
3
  description: Create flowcharts, sequence diagrams, and more with Mermaid
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags:
@@ -2,7 +2,7 @@
2
2
  title: Icons
3
3
  description: Use icons from Font Awesome, Material, Remix, and Bootstrap
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags:
@@ -224,4 +224,6 @@ Find icons at:
224
224
 
225
225
  ---
226
226
 
227
- Continue to [Configuration](../../config/) to customize your blog.
227
+ Next: [Slides](./05-slides) to create interactive presentations.
228
+
229
+ Or continue to [Configuration](../../config/) to customize your blog.
@@ -2,7 +2,7 @@
2
2
  title: LaTeX Math
3
3
  description: Write mathematical formulas with LaTeX and KaTeX
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags:
@@ -2,7 +2,7 @@
2
2
  title: Video Embedding
3
3
  description: Embed YouTube, Bilibili, and custom videos in your posts
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags:
@@ -0,0 +1,359 @@
1
+ ---
2
+ title: Slides (Presentations)
3
+ description: Create interactive presentations with Reveal.js
4
+ pubDate: 2025-01-01
5
+ author: jet-w
6
+ categories:
7
+ - Documentation
8
+ tags:
9
+ - Slides
10
+ - Reveal.js
11
+ - Presentations
12
+ ---
13
+
14
+ # Slides (Presentations)
15
+
16
+ This blog integrates [Reveal.js](https://revealjs.com/) to let you create beautiful interactive presentations using Markdown.
17
+
18
+ ## Quick Start
19
+
20
+ ### Creating a Presentation
21
+
22
+ Create a Markdown file in the `content/slides/` directory:
23
+
24
+ ```markdown
25
+ ---
26
+ title: My Presentation
27
+ description: A demo presentation
28
+ pubDate: 2025-01-01
29
+ theme: black
30
+ ---
31
+
32
+ # First Slide
33
+
34
+ This is the opening
35
+
36
+ ---
37
+
38
+ ## Second Slide
39
+
40
+ - Point one
41
+ - Point two
42
+ - Point three
43
+
44
+ ---
45
+
46
+ # Thank You!
47
+ ```
48
+
49
+ ### Slide Separators
50
+
51
+ - Use `---` (three dashes) to separate **horizontal slides**
52
+ - Use `----` (four dashes) to separate **vertical slides**
53
+
54
+ ```markdown
55
+ # Topic One
56
+
57
+ ---
58
+
59
+ # Topic Two
60
+
61
+ This is horizontal navigation
62
+
63
+ ----
64
+
65
+ ## Topic Two Details
66
+
67
+ This is a vertical sub-slide (press ↓)
68
+
69
+ ----
70
+
71
+ ## More Details
72
+
73
+ Continue vertical navigation
74
+
75
+ ---
76
+
77
+ # Topic Three
78
+
79
+ Back to horizontal navigation
80
+ ```
81
+
82
+ ## Frontmatter Configuration
83
+
84
+ | Option | Type | Default | Description |
85
+ |:---|:---|:---|:---|
86
+ | `title` | string | - | Presentation title (required) |
87
+ | `description` | string | - | Presentation description |
88
+ | `pubDate` | Date | - | Publication date |
89
+ | `author` | string | - | Author |
90
+ | `tags` | string[] | [] | Tags |
91
+ | `theme` | string | "black" | Theme name |
92
+ | `transition` | string | "slide" | Transition animation |
93
+ | `controls` | boolean | true | Show control arrows |
94
+ | `progress` | boolean | true | Show progress bar |
95
+ | `slideNumber` | boolean | false | Show slide numbers |
96
+ | `draft` | boolean | false | Draft status |
97
+
98
+ ### Available Themes
99
+
100
+ | Theme | Description |
101
+ |:---|:---|
102
+ | `black` | Black background, white text (default) |
103
+ | `white` | White background, black text |
104
+ | `league` | Gray background |
105
+ | `beige` | Beige background, vintage style |
106
+ | `night` | Night mode, dark blue background |
107
+ | `serif` | Serif fonts, academic style |
108
+ | `simple` | Minimalist white |
109
+ | `solarized` | Solarized color scheme |
110
+
111
+ ### Transitions
112
+
113
+ | Transition | Description |
114
+ |:---|:---|
115
+ | `none` | No animation |
116
+ | `fade` | Fade in/out |
117
+ | `slide` | Slide (default) |
118
+ | `convex` | Convex effect |
119
+ | `concave` | Concave effect |
120
+ | `zoom` | Zoom effect |
121
+
122
+ ## Writing Content
123
+
124
+ ### Titles and Text
125
+
126
+ ```markdown
127
+ # Main Title
128
+
129
+ ## Section Title
130
+
131
+ Regular paragraph text
132
+
133
+ **Bold** and *italic*
134
+
135
+ > Blockquote
136
+ ```
137
+
138
+ ### Lists
139
+
140
+ ```markdown
141
+ ## Unordered List
142
+
143
+ - Item one
144
+ - Item two
145
+ - Item three
146
+
147
+ ---
148
+
149
+ ## Ordered List
150
+
151
+ 1. First step
152
+ 2. Second step
153
+ 3. Third step
154
+ ```
155
+
156
+ ### Code Highlighting
157
+
158
+ ````markdown
159
+ ## Code Example
160
+
161
+ ```javascript
162
+ function hello(name) {
163
+ console.log(`Hello, ${name}!`);
164
+ }
165
+
166
+ hello('World');
167
+ ```
168
+ ````
169
+
170
+ Supports syntax highlighting for all common programming languages.
171
+
172
+ ### Math Formulas
173
+
174
+ LaTeX math formulas are supported:
175
+
176
+ ```markdown
177
+ ## Math Formulas
178
+
179
+ Inline: $E = mc^2$
180
+
181
+ Block:
182
+
183
+ $$
184
+ \int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
185
+ $$
186
+ ```
187
+
188
+ ### Mermaid Diagrams
189
+
190
+ ````markdown
191
+ ## Flowchart
192
+
193
+ ```mermaid
194
+ graph TD
195
+ A[Start] --> B{Condition}
196
+ B -->|Yes| C[Execute]
197
+ B -->|No| D[Skip]
198
+ C --> E[End]
199
+ D --> E
200
+ ```
201
+ ````
202
+
203
+ ### Column Layout
204
+
205
+ ```html
206
+ ## Two Columns
207
+
208
+ <div style="display: flex; gap: 2rem;">
209
+ <div style="flex: 1;">
210
+
211
+ ### Left Side
212
+
213
+ - Content one
214
+ - Content two
215
+
216
+ </div>
217
+ <div style="flex: 1;">
218
+
219
+ ### Right Side
220
+
221
+ - Content three
222
+ - Content four
223
+
224
+ </div>
225
+ </div>
226
+ ```
227
+
228
+ ### Images
229
+
230
+ ```markdown
231
+ ## Image Display
232
+
233
+ ![Description](/images/example.png)
234
+ ```
235
+
236
+ ### Tables
237
+
238
+ ```markdown
239
+ ## Comparison
240
+
241
+ | Feature | Option A | Option B |
242
+ |:---|:---:|:---:|
243
+ | Performance | High | Medium |
244
+ | Usability | Medium | High |
245
+ | Cost | Low | Medium |
246
+ ```
247
+
248
+ ## Fragment Animations
249
+
250
+ Use HTML attributes to add step-by-step reveal effects:
251
+
252
+ ```html
253
+ ## Step by Step
254
+
255
+ <ul>
256
+ <li class="fragment">Step one</li>
257
+ <li class="fragment">Step two</li>
258
+ <li class="fragment">Step three</li>
259
+ </ul>
260
+ ```
261
+
262
+ ### Fragment Types
263
+
264
+ ```html
265
+ <p class="fragment fade-in">Fade in</p>
266
+ <p class="fragment fade-out">Fade out</p>
267
+ <p class="fragment highlight-red">Highlight red</p>
268
+ <p class="fragment highlight-blue">Highlight blue</p>
269
+ <p class="fragment grow">Grow</p>
270
+ <p class="fragment shrink">Shrink</p>
271
+ ```
272
+
273
+ ## Keyboard Shortcuts
274
+
275
+ Available shortcuts in presentation mode:
276
+
277
+ | Shortcut | Function |
278
+ |:---|:---|
279
+ | `→` / `←` | Horizontal navigation |
280
+ | `↓` / `↑` | Vertical navigation |
281
+ | `Space` | Next slide |
282
+ | `Esc` | Overview mode |
283
+ | `F` | Fullscreen mode |
284
+ | `S` | Speaker view |
285
+ | `B` | Black screen pause |
286
+ | `?` | Show help |
287
+
288
+ ## Speaker View
289
+
290
+ Press `S` to open speaker view, which shows:
291
+
292
+ - Current slide
293
+ - Next slide preview
294
+ - Speaker notes
295
+ - Timer
296
+
297
+ ### Adding Speaker Notes
298
+
299
+ ```markdown
300
+ ## Slide Title
301
+
302
+ Slide content
303
+
304
+ Note:
305
+ These are speaker notes that the audience won't see.
306
+ You can write prompts, key points, etc.
307
+ ```
308
+
309
+ ## File Organization
310
+
311
+ Recommended directory structure:
312
+
313
+ ```
314
+ content/
315
+ └── slides/
316
+ ├── my-presentation.md # Single presentation
317
+ └── workshop/ # Series
318
+ ├── 01-intro.md
319
+ ├── 02-basics.md
320
+ └── 03-advanced.md
321
+ ```
322
+
323
+ ## Best Practices
324
+
325
+ ::: tip Keep It Simple
326
+ Focus on one key point per slide. Avoid information overload.
327
+ :::
328
+
329
+ ::: tip Visual Hierarchy
330
+ - Use headings to establish structure
331
+ - Use lists and diagrams effectively
332
+ - Leave appropriate whitespace
333
+ :::
334
+
335
+ ::: tip Code Presentation
336
+ - Keep code snippets short
337
+ - Highlight key parts
338
+ - Add explanatory text
339
+ :::
340
+
341
+ ::: warning Performance
342
+ - Optimize and compress images
343
+ - Avoid extremely long presentations
344
+ - Complex diagrams may need loading time
345
+ :::
346
+
347
+ ## Example Presentations
348
+
349
+ Visit the `/slides` page to browse example presentations, including:
350
+
351
+ - Basic syntax demo
352
+ - Code highlighting examples
353
+ - Math formula showcase
354
+ - Mermaid diagrams
355
+ - Theme previews
356
+
357
+ ---
358
+
359
+ Next: Check out [Icons](./04-icons) for visual elements.
@@ -1,15 +1,34 @@
1
1
  ---
2
- title: Markdown Essentials
3
- description: Core Markdown syntax for everyday writing
2
+ title: Writing Guide
3
+ description: Master content creation with Markdown, components, and advanced features
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags:
9
+ - Guide
9
10
  - Markdown
10
11
  - Writing
11
12
  ---
12
13
 
14
+ # Writing Guide
15
+
16
+ Learn how to create beautiful, engaging content for your blog.
17
+
18
+ ## Content Guide
19
+
20
+ | Guide | Description |
21
+ |-------|-------------|
22
+ | [Containers](./02-containers) | Tips, warnings, and callout boxes |
23
+ | [Code Blocks](./03-code-blocks) | Syntax highlighting and features |
24
+ | [Mermaid Diagrams](./03-mermaid) | Flowcharts, sequences, and more |
25
+ | [Icons](./04-icons) | Use icons from multiple libraries |
26
+ | [LaTeX Math](./06-latex) | Mathematical formulas |
27
+ | [Video Embedding](./07-video) | YouTube, Bilibili, custom videos |
28
+ | [Slides](./08-slides) | Interactive presentations with Reveal.js |
29
+
30
+ ---
31
+
13
32
  # Markdown Essentials
14
33
 
15
34
  Markdown is a lightweight markup language that makes writing formatted content easy and intuitive.
@@ -2,7 +2,7 @@
2
2
  title: Site Settings
3
3
  description: Configure your site's title, description, and metadata
4
4
  pubDate: 2025-01-01
5
- author: Astro Blog
5
+ author: jet-w
6
6
  categories:
7
7
  - Documentation
8
8
  tags: