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 🙏

© 2024 – Pkg Stats / Ryan Hefner

@tsukina-7mochi/github-cards

v0.2.1

Published

Web Components implementation of cards for GitHub repositories

Downloads

15

Readme

GitHub Cards

A cutting-edge library designed to enhance the presentation of GitHub repositories and user profiles on your website. With minimal setup, you can embed dynamic, beautifully designed summaries of GitHub repositories that include key details such as descriptions, stars, forks, licenses, and topics. Built on modern Web Components technology, this library is both easy to use and highly customizable.

Features

  • Comprehensive Repository Information: Display essential details like description, stars, forks, license, language, topics and user avatar.
  • Beautiful Design: Out-of-the-box aesthetics that enhance the visual appeal of your website.
  • Easy Integration: Simply include a <script> tag and use the custom element.
  • Customization: Use CSS variables to customize the appearance and seamlessly integrate with your website's style.
  • Performance Optimization: Caches responses from the GitHub API to avoid rate limits and uses the Cache API and Lock API to efficiently manage requests, even across sessions.

Feature plans

  • Implemet a card for GitHub users to display user profiles with details such as follower count, repository count, and more.

Demo

repository card (light)

repository card (dark)

Check out this live demo to see GitHub Repo Cards in action:

https://tsukina-7mochi.github.io/github-cards/

Usage

via CDN

You can import script from CDN esm.sh. Add the following <script> tag to your HTML document to load library:

<script type="module" async src="https://esm.sh/@tsukina-7mochi/github-cards"></script>

Use the <gh-repo-card> custom element wherever you want to display a GitHub repository card:

<gh-repo-card name="Tsukina-7mochi/github-cards></gh-repo-card>

See docs directory for demonstration page implementation.

via npm

You can simply import this library instead of loading from CDN:

require('@tsukina-7mochi/github-cards`);
// or
import '@tsukina-7mochi/github-cards`;

API

gh-repo-card

Attributes

| attribute | description | | ---------------- | ------------------------------------------------------------- | | name | Repository name e.g. Tsukina-7mochi/github-cards (required) | | no-avatar | Set true to hide user avatar | | no-description | Set true to hide repository description | | no-stars | Set true to hide stars count | | no-forks | Set true to hide forks count | | no-license | Set true to hide license | | no-language | Set true to hide language | | no-topics | Set true to hide topics |

Customizations

CSS colors

| CSS variable | default | description | | ----------------------------------- | ----------------- | ------------------------------------- | | --gh-card-color-border | #c0c0c0 | Border color | | --gh-card-color-background-hover | rgb(0 0 0 / 3%) | Background color of card when hovered | | --gh-card-color-background-active | rgb(0 0 0 / 5%) | Background color of card when active | | --gh-card-color-fg | #404040 | Foreground (text) color | | --gh-card-color-fg-2 | #808080 | Foreground color (light) | | --gh-card-color-link | #646cff | Color of link text |

Thanks