npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

slidev-theme-vuestorefront

v1.0.1

Published

[![NPM version](https://img.shields.io/npm/v/slidev-theme-vuestorefront?color=3AB9D4&label=)](https://www.npmjs.com/package/slidev-theme-vuestorefront)[![Netlify Status](https://api.netlify.com/api/v1/badges/6ec33b49-92d9-4315-bbf7-f222a4fae33e/deploy-sta

Readme

slidev-theme-vuestorefront

NPM versionNetlify Status

A Vue Storefront inspired theme for Slidev.

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

Features

  • Pretty and full of awesomeness
  • Code Highlighting with Material Theme
  • SFC Playground Integration
  • Flexible Default Layout using Grids
  • Follow Vue Storefront designs

Default

Install

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

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
  • Image Title
  • Section
  • Quote
  • SFC
  • Video
  • Grid Based Section
  • Outro

Default

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

It an of course be used as-is:

```frontmatter
---

# 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:

```frontmatter
---
contextTitle: "Vue Storefront 2"
name: Perfect acceleration
title: Perfect acceleration
text: "Best starting point for any eCommerce project.
Don’t waste months on repetitive groundwork and focus
on your own features & customization"
titleRow: true
cols: '1-1'
---

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:

```frontmatter
---
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:

```frontmatter
---
contextTitle: "Vue Storefront 2"
name: Perfect acceleration
title: Perfect acceleration
text: "Best starting point for any eCommerce project.
Don’t waste months on repetitive groundwork and focus
on your own features & customization"
titleRow: true
cols: '1-1'
---

- Ready eCommerce theme
- Server-Side Rendering and JAM Stack
- Fast and scalable
- Fast, accessible, easy to customize

::right::

```html
<template>
  <h1>Hello World"</h1>
  <div class="message">{{ message }}</div>
</template>
<script>
  export default {
    data:() => ({
      message: 'Great to be here!',
    })
  }
</script>
<style scoped>
  .message {
    color: red;
  }
</style>
```

Cover

A Cover slide for the Talk Title & Subtitle

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

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.

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

# Need to make a few big points?

- Increased font size...
- ...and centered content
- Also show badges <Badge type="info">info</Badge><Badge type="success">success</Badge><Badge type="warn">warn</Badge><Badge type="error">error</Badge><Badge type="default">default</Badge>
- help stressing a few points

```

Section

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

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

Quote

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

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

# We don't make mistakes, just happy little accidents.

---
```

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.

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

```ts
// ./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

```frontmatter
---
layout: sfc
example: Test
---

# This will be the slide's title
```

Video

This layout can handle videos from YouTube, Vimeo, Dailymotion and Coub

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

# You can include Video!
```

Code

Use this layout to show some code on the screen

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

    Use code snippets and get the highlighting directly!

    ```html
    <template>
      <h1>Hello World"</h1>
      <div class="message">{{ message }}</div>
    </template>
    <script>
      export default {
        data:() => ({
          message: 'Great to be here!',
        })
      }
    </script>
    <style scoped>
      .message {
        color: red;
      }
    </style>
    ```
```

Outro

Want to finish your presentation you can use this layout

Dark | Light :-------------------------:|:-------------------------: introDark | introLight

  # Thank you for listening!
  ## It's Q&A time!
```

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