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

@react95/gatsby-theme

v2.2.1

Published

A React95 theme for your Gatsby blog

Downloads

26

Readme

Installation

For a new site

If you're creating a new site and want to use the React95 theme, you can use the Gatsby CLI (make sure to select styled-components as your styling system)

gatsby new my-nostalgic-blog

Follow the CLI and when you've finished, go to the next step

For an existing site

If you already have a site you'd like to add the React95 theme to, you can manually configure it.

  1. Install the React95 theme
npm install @react95/core @react95/gatsby-theme styled-components

# or

yarn add @react95/core @react95/gatsby-theme styled-components
  1. Add the configuration to your gatsby-config.js file
// gatsby-config.js
module.exports = {
  plugins: [
    {
      resolve: `@react95/gatsby-theme`,
      options: {
        // basePath defaults to `/`
        basePath: `/site`,
      },
    },
  ],
};
  1. Add content to your site by creating md or mdx files inside /content folder.

React95 theme will create everything for you so you might not need src/pages.

Note that if you've changed the default contentPath in the configuration, you'll want to add your markdown files in the directory specified by that path.

  1. Run your site using gatsby develop and see your content in the TaskBar. If you used the above configuration, your URL will be http://localhost:8000/site

If you have no content in the beginning, React95 theme will generate a starter for you.

Usage

Theme options

| Key | Default value | Description | | ------------- | ------------- | ------------------------ | | basePath | / | Root url for all content | | contentPath | content | Location of your content |

Additional configuration

In addition to the theme options, there are a handful of items you can customize via the siteMetadata object in your site's gatsby-config.js

// gatsby-config.js
module.exports = {
  siteMetadata: {
    // Used for the site title and SEO
    title: `Gatsby - Powered By React95`,
    // Used for SEO
    description: `This is a Gatsby website that uses React95`,
    // Used for resolving images in social cards
    siteUrl: `https://example.com`,
    // Used for SEO in social cards
    image: `/path-to/your/image`,
    // Used for SEO
    author: `@mynickname`,
  },
};

Content Fields

The following are the defined content fields based on the node interface in the schema

| Field | Type | | ----------- | ------- | | title | String | | image | String | | description | String | | icon | Icon | | image | String | | modal | Boolean |

Icon type

| Field | Type | | ------- | ------ | | name | String | | variant | String |

# content/getting-started.mdx

---

title: Getting Started
description: Your awesome and nostalgic website!
modal:false
icon:
name: Computer
variant: 32x32_4

---

# Your website starts on this folder

Feel free to add your content!

Image Behavior

Content can include references to images from static folder inside frontmatter.

---
title: Hello World (example)
image: /some-image.jpg
icon:
  name: Computer
  variant: 32x32_4
---

When adding an image it will be the featured image within the post.

How Styles work

Inside any mdx file you have all React95 components at your service:

---
title: How to
icon:
  name: FolderExe
  variant: 16x16_4
---

<Frame
  bg="white"
  p={6}
  boxShadow="in"
  height="100%"
>

# How to

...

</Frame>

Examples