Welcome to Slidev
Presentation slides for developers
transition: fade-out —
What is Slidev?
Slidev is a slides maker and presenter designed for developers, consist of the following features
- 📝 Text-based - focus on the content with Markdown, and then style them later
- 🎨 Themable - theme can be shared and used with npm packages
- 🧑💻 Developer Friendly - code highlighting, live coding with autocompletion
- 🤹 Interactive - embedding Vue components to enhance your expressions
- 🎥 Recording - built-in recording and camera view
- 📤 Portable - export into PDF, PNGs, or even a hostable SPA
- 🛠 Hackable - anything possible on a webpage
Read more about Why Slidev?
layout: default —
Table of contents
<Toc minDepth="1" maxDepth="5"></Toc>
transition: slide-up
level: 2
Navigation
Hover on the bottom-left corner to see the navigation’s controls panel, learn more
Keyboard Shortcuts
right / space | next animation or slide |
left / shiftspace | previous animation or slide |
up | previous slide |
down | next slide |
Here!
layout: image-right image: https://source.unsplash.com/collection/94734566/1920x1080 —
Code
Use code snippets and get the highlighting directly![^1]
```ts {all|2|1-6|9|all} interface User { id: number firstName: string lastName: string role: string }
function updateUser(id: number, update: User) { const user = getUser(id) const newUser = { …user, …update } saveUser(id, newUser) }
<arrow v-click="3" x1="400" y1="420" x2="230" y2="330" color="#564" width="3" arrowSize="1" />
[^1]: [Learn More](https://sli.dev/guide/syntax.html#line-highlighting)
<style>
.footnotes-sep {
@apply mt-20 opacity-10;
}
.footnotes {
@apply text-sm opacity-75;
}
.footnote-backref {
display: none;
}
</style>
---
# Components
<div grid="~ cols-2 gap-4">
<div>
You can use Vue components directly inside your slides.
We have provided a few built-in components like `<Tweet/>` and `<Youtube/>` that you can use directly. And adding your custom components is also super easy.
```html
<Counter :count="10" />
<Counter :count=”10” m=”t-4” />
Check out the guides for more.
</div>
</div>
class: px-20 —
Themes
Slidev comes with powerful theming support. Themes can provide styles, layouts, components, or even configurations for tools. Switching between themes by just one edit in your frontmatter:
Read more about How to use a theme and check out the Awesome Themes Gallery.
preload: false —
Animations
Animations are powered by @vueuse/motion.
<div
v-motion
:initial="{ x: -80 }"
:enter="{ x: 0 }">
Slidev
</div>
</div>
<div v-motion :initial=”{ x:35, y: 40, opacity: 0}” :enter=”{ y: 0, opacity: 1, transition: { delay: 3500 } }”>
</div>
LaTeX
LaTeX is supported out-of-box powered by KaTeX.
Inline $\sqrt{3x-1}+(1+x)^2$
Block $$ \begin{array}{c}
\nabla \times \vec{\mathbf{B}} -\, \frac1c\, \frac{\partial\vec{\mathbf{E}}}{\partial t} & = \frac{4\pi}{c}\vec{\mathbf{j}} \nabla \cdot \vec{\mathbf{E}} & = 4 \pi \rho \
\nabla \times \vec{\mathbf{E}}\, +\, \frac1c\, \frac{\partial\vec{\mathbf{B}}}{\partial t} & = \vec{\mathbf{0}} \
\nabla \cdot \vec{\mathbf{B}} & = 0
\end{array} $$
Diagrams
You can create diagrams / graphs from textual descriptions, directly in your Markdown.
and features On Automatic creation Uses Creative techniques Strategic planning Argument mapping Tools Pen and paper Mermaid ``` ```plantuml {scale: 0.7} @startuml package "Some Group" { HTTP - [First Component] [Another Component] } node "Other Groups" { FTP - [Second Component] [First Component] --> FTP } cloud { [Example 1] } database "MySql" { folder "This is my folder" { [Folder 3] } frame "Foo" { [Frame 4] } } [Another Component] --> [Example 1] [Example 1] --> [Folder 3] [Folder 3] --> [Frame 4] @enduml ```
src: ./pages/multiple-entries.md hide: false —
layout: center class: text-center —