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

gatsby-theme-classroom-blog

v0.0.5

Published

A simple theme to share teaching materials of my internal trainings. Based on the awesome [gatsby-theme-blog](https://www.gatsbyjs.com/plugins/gatsby-theme-blog/)

Downloads

2

Readme

Gatsby Theme Classroom Blog

A simple theme to share teaching materials of my internal trainings. Based on the awesome gatsby-theme-blog

Getting started

  1. Apply the theme in the config, and set up google analytics if necessary.

    // gatsby.config.js
    module.exports = {
      plugins: [
        { resolve: `gatsby-theme-classroom-blog`, options: {} },
        {
          resolve: `gatsby-plugin-google-gtag`,
          options: {
            // The property ID; the tracking code won't be generated without it
            trackingIds: [
              "G-...."
            ],
          },
        },
    
      ],
    }
  2. Create 2 blog posts with slugs respectively:

    • course-info
    • cheatsheet
    ---
    title: Course Info
    date: 2020-10-31
    slug: /course-info
    ---
    
    Purpose of the course: ...
  3. Add an image avatar into content/assets/

  4. Make sure you set some content to /slides

    • One way is like in the example, to create a custom page in gatsby
    • Other way would be to add the necessary files (at least an index.html) by the deployment to /public/slides folder
  5. Add course materials as posts into /content/posts/ as .mdx files

Original docs

Quickly get started using the Gatsby blog theme! This starter creates a new Gatsby site that is preconfigured to work with the official Gatsby blog theme.

🚀 Quick start

  1. Create a Gatsby site.

    Use the Gatsby CLI to create a new site, specifying the blog theme starter.

    # create a new Gatsby site using the blog theme starter
    gatsby new my-themed-blog https://github.com/gatsbyjs/gatsby-starter-blog-theme
  2. Start developing.

    Navigate into your new site’s directory and start it up.

    cd my-themed-blog/
    gatsby develop
  3. Open the code and start customizing!

    Your site is now running at http://localhost:8000!

    To get started, check out the guide to using the Gatsby blog theme starter, or the longer, more detailed tutorial.

🧐 What's inside?

Here are the top-level files and directories you'll see in a site created using the blog theme starter:

gatsby-starter-blog-theme
├── content
│   ├── assets
│   │   └── avatar.png
│   └── posts
│       ├── hello-world.mdx
│       └── my-second-post.mdx
├── src
│   └── gatsby-theme-blog
│       ├── components
│       │   └── bio-content.js
│       └── gatsby-theme-ui
│           └── colors.js
├── .gitignore
├── .prettierrc
├── gatsby-config.js
├── LICENSE
├── package-lock.json
├── package.json
└── README.md
  1. /content: A content folder holding assets that the theme expects to exist. This will vary from theme to theme -- this starter is set up to get you started with the blog theme, which expects an image asset for your avatar, and blog post content. Replace the avatar image file, delete the demo posts, and add your own!

  2. /src: You will probably want to customize your site to personalize it. The files under /src/gatsby-theme-blog shadow, or override, the files of the same name in the gatsby-theme-blog package. To learn more about this, check out the guide to getting started with using the blog theme starter.

  3. .gitignore: This file tells git which files it should not track / not maintain a version history for.

  4. .prettierrc: This file tells Prettier which configuration it should use to lint files.

  5. gatsby-config.js: This is the main configuration file for a Gatsby site. This is where you can specify information about your site (metadata) like the site title and description, which Gatsby plugins you’d like to include, etc. When using themes, it's where you'll include the theme plugin, and any customization options the theme provides.

  6. LICENSE: This Gatsby starter is licensed under the 0BSD license. This means that you can see this file as a placeholder and replace it with your own license.

  7. package-lock.json (See package.json below, first). This is an automatically generated file based on the exact versions of your npm dependencies that were installed for your project. (You won’t change this file directly).

  8. package.json: A manifest file for Node.js projects, which includes things like metadata (the project’s name, author, etc). This manifest is how npm knows which packages to install for your project.

  9. README.md: A text file containing useful reference information about your project.

🎓 Learning Gatsby

Looking for more guidance? Full documentation for Gatsby lives on the website.

Here are some places to start:

Themes

  • To learn more about Gatsby themes specifically, we recommend checking out the theme docs.

General

  • For most developers, we recommend starting with our in-depth tutorial for creating a site with Gatsby. It starts with zero assumptions about your level of ability and walks through every step of the process.

  • To dive straight into code samples, head to our documentation. In particular, check out the Reference Guides and Gatsby API sections in the sidebar.