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 🙏

© 2026 – Pkg Stats / Ryan Hefner

slidev-addon-card

v1.0.0

Published

A Slidev addon for creating beautiful cards with images, titles, and content with various frame styles

Readme

Slidev Card Addon

A beautiful and flexible card component for Slidev presentations that combines images, titles, and content with various styling options.

Features

  • 🖼️ Image Support - Display images with various frame styles
  • 📐 Flexible Layouts - Landscape and portrait orientations
  • 🎨 Custom Frames - Rectangle, circle, ellipse, diamond, and gem shapes
  • 🎯 Customizable Styling - Colors, borders, shadows, and more
  • 📱 Responsive Design - Adapts to different screen sizes
  • Hover Effects - Smooth animations and interactions

Installation

npm install slidev-addon-card

Basic Usage

1. Add to your Slidev presentation

In your slides.md frontmatter:

---
addons:
  - slidev-addon-card
---

2. Use the Card component

# My Slide

<Card 
  title="Beautiful Card" 
  img="https://picsum.photos/400/300?random=1">
  
This is the card content. You can write any markdown or HTML here.

</Card>

Component Properties

| Property | Type | Default | Description | |----------|------|---------|-------------| | title | String | Required | Card title text | | img | String | Required | Image URL | | orientation | String | landscape | Card layout: landscape or portrait | | frame | String | rectangle | Image frame style | | backgroundColor | String | #ffffff | Card background color | | borderColor | String | #e0e0e0 | Card border color | | titleColor | String | #333333 | Title text color | | textColor | String | #666666 | Content text color | | borderRadius | String | 12px | Card border radius | | shadow | Boolean | true | Enable/disable drop shadow |

Frame Styles

The frame property supports the following values:

  • rectangle - Standard rectangular frame (default)
  • circle - Circular frame, perfect for profile pictures
  • ellipse - Elliptical frame for a softer look
  • lens - Lens-shaped frame that adapts to container proportions
  • diamond - Diamond-shaped frame for geometric appeal
  • gem - Irregular gem shape that's unique each time

Examples

Landscape Card (Default)

<Card 
  title="Landscape Card" 
  img="https://picsum.photos/400/300?random=1">
  
This is a landscape-oriented card with default styling.

</Card>

Portrait Card

<Card 
  title="Portrait Card" 
  img="https://picsum.photos/300/400?random=2"
  orientation="portrait">
  
This card uses portrait orientation.

</Card>

Circular Frame

<Card 
  title="Profile Card" 
  img="https://picsum.photos/400/400?random=3"
  frame="circle">
  
Perfect for profile pictures or circular designs.

</Card>

Custom Styling

<Card 
  title="Custom Card" 
  img="https://picsum.photos/400/300?random=4"
  frame="diamond"
  backgroundColor="#f8f9fa"
  borderColor="#007bff"
  titleColor="#007bff"
  textColor="#495057"
  borderRadius="20px">
  
Fully customized card with diamond frame and custom colors.

</Card>

Multiple Cards Layout

<div style="display: flex; gap: 20px; flex-wrap: wrap;">

<Card 
  title="Card 1" 
  img="https://picsum.photos/300/200?random=5"
  style="flex: 1; min-width: 250px;">
  
First card content.

</Card>

<Card 
  title="Card 2" 
  img="https://picsum.photos/300/200?random=6"
  frame="circle"
  style="flex: 1; min-width: 250px;">
  
Second card content.

</Card>

</div>

Responsive Design

The card component automatically adapts to different screen sizes:

  • On mobile devices, landscape cards automatically switch to portrait layout
  • Images maintain their aspect ratio and clip properly
  • Text content remains readable at all sizes

Styling Tips

  1. Color Coordination: Use colors that match your presentation theme
  2. Image Quality: Use high-resolution images for better visual impact
  3. Content Length: Keep content concise for better readability
  4. Frame Selection: Choose frames that complement your content type
  5. Layout Planning: Consider using multiple cards for comparison or showcase

Browser Support

This addon works with all modern browsers that support:

  • CSS Grid and Flexbox
  • CSS clip-path property
  • Vue 3 composition API

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

License

MIT License - see LICENSE file for details.

Changelog

v1.0.0

  • Initial release
  • Basic card functionality
  • Multiple frame styles
  • Responsive design
  • Customizable styling options