Giter Site home page Giter Site logo

borrus-sudo / slidev-theme-vuetiful Goto Github PK

View Code? Open in Web Editor NEW

This project forked from linusborg/slidev-theme-vuetiful

0.0 2.0 0.0 1.48 MB

A Slidev Theme for my talks about Vue.js

Home Page: https://slidev-theme-vuetiful.netlify.app/

License: MIT License

JavaScript 0.97% Vue 74.63% TypeScript 9.11% CSS 11.58% HTML 3.70%

slidev-theme-vuetiful's Introduction

slidev-theme-vuetiful

NPM version

A Vue-inspired theme for Slidev.

Live demo: https://slidev-theme-vuetiful.netlify.app/

Features

  • Pretty Vue Theme
  • Subtle Animations on Cover, Section etc. slides
  • Code Highlighting with Sarah Drasner's Night Owl Theme
  • SFC Playground Integration
  • Flexible Default Layout using Grids

Cover Default

Install

Add the following frontmatter to your slides.md. Start Slidev then it will prompt you to install the theme automatically.

---
theme: vuetiful
---

Learn more about how to use a theme.

Layouts

Note: I'm still in the process of adding more slide variations.

This theme provides the following layouts:

  • Default (improved w/grid)
  • BigPoints
  • Cover
  • Section
  • Quote
  • SFC
  • Video
  • Outro

Default

The default slide has a few tricks up it's sleeve.

It an of course be used as-is:

---

# This will be the heading

And this can be used as test below it

-  We can have a list.
- With a few items.

---

But it can also have the title in a special row:

---
title: This will now be the heading
titleRow: true
---

This content can now be styled/positioned independent of the title,
because it will be in a separate grid cell.

---

We can also do a quick column:

---
cols: 1-1 # Other values: 2-1 or 1-2, as well as any valid grid-cols-* class from windiwcss
---

This will go in the left column

:::right:::

This will go into the right column

---

You can also combine this with the separate titleRow:

---
title: This will span both columns
titleRow: true
cols: 2-1
---

This will be in the wider, left column

:::right:::

This will be in the smaller, right column

Cover

A Cover slide for the Talk Title & Subtitle

Example

---
layout: cover
cover: alt # to enable alternative cover
clicks: 1
---

# Vuetiful Theme
A Vue-inspired theme for my talks about Vue

Note: the clicks: 1 is necessary for the entry transition to work properly

Screenshot of Cover Slide

Click for more screens

Default cover:

Screenshot of Cover Slide

White alt cover:

Screenshot of Cover Slide

Big Points

This slide type is much like the default slide, the main difference is that the content font-size is bigger and the content in centered.

Useful for slides that just contain a few points or sentences.

Example

---
layout: big-points
title: Need to make a few big points?
titleRow: true
---

- Increased font size...
- ...and centered content
- help stressing a few points

Screenshot of Big-Points Slide

Section

This slide can be used to split your talks into sections. It's meant to only have a single heading.

Section Slide

Quote

Sometimes you want to drive home a point with a quote. This slide provides a nice way of doing that.

Example

---
layout: quote
author: Linus Borg (2021)
---

# Big quotes make your talk look fancy

---

Quote Slide

SFC (Single File Component Preview)

This template integrates the SF playground (sfc.vuejs.org) which allows for live demos. It's usage requires a bit of preparation/config.

Config

// ./setup/main.ts
import { defineAppSetup } from '@slidev/types'

// use Vite's raw imports to get file content as string
// (see: https://vitejs.dev/guide/features.html#static-assets)
import Test from '../examples/Test.vue?raw'
import App from '../examples/App.vue?raw'
import Child from '../examples/Child.vue?raw'


interface Examples {
  [key: string]: string | {
    [key: string]: string
  }
}
const examples: Examples = {
  // for examples consisting of a single file, 
  // just pass its content as value
  // File will be named App.vue
  Test: Test,
  // to construct an example from multiple files,
  // or have a custom name for the file,
  // pass an object where each key is the filename 
  // and value is the file content string
  Multiple: {
    'App.vue': App,
    'Child.vue': Child,
  }
}

export default defineAppSetup(({ app }) => {
  // use app.provide to make all examples 
  // available to the SFC Slide implementation
  app.provide('sfc-examples', examples)
})

Usage

---
layout: sfc
example: Test 
---

# This will be the slide's title

Example

Slide Example for SFC Playground

Video

Slide for Videos

Contributing

  • npm install
  • npm run dev to start theme preview of example.md
  • Edit the example.md and style to see the changes
  • npm run export to generate the preview PDF
  • npm run screenshot to generate the preview PNG

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.