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

@evokegroup/str8r-static

v3.0.7

Published

Starter project for a static str8r site.

Downloads

5

Readme

str8r-static

Clone this to start a generic str8r (siterator) project.

Install

Requires NodeJS v18 or v20 LTS

> npm install

Start locally

> npm start

Run with Docker

> npm run docker-up

> npm run docker-down

Build

> npm run build

Build and serve

> npm run build-serve

Pass build arguments

> npm run build -- --env=prd --host=aws

Build with Docker

> npm run docker-build

Why use Node to start Docker?

The Node process has a few advantages:

  • Automatically find an available port to run Browsersync on
  • Name the container in Docker Desktop to match the project name
  • Make running multiple str8r sites at the same time easy
  • Fix a problem with Windows file change event detection

Gulp

View available gulp tasks

> npx gulp --tasks

Project Directories

.str8r

Temporary files used by str8r. When running locally, Browsersync serves files from .str8r/dev.

config

Override default build and runtime settings, including changing the directory locations listed below. See individual config/*.md files for more details.

dist

Built project output.

src

Project source.

  • _handlebars
    • data - Data files available within the Handlebars context
      • links.json - Project links. See src/_handlebars/data/links.md.
      • nav.json - Nav menu settings for the {{nav}} helper. See src/_handlebars/data/nav.md.
      • site.json - General site settings.
    • helpers - Helpers. Str8r provides a number of helpers. See src/_handlebars/helpers/readme.md.
    • layouts - Layout partials
    • partials - Partials
    • templates - Template partials (nav, robots, sitemap)
  • assets
    • img - Images. These will be automatically optimized and have webp versions created for gif, jpg, and png files.
    • img-resizes - Images placed into the directory will be automatically resized and based on settings contained within the directory and then optimized. See src/assets/img-resizes/readme.md.
    • js - Scripts
    • scss - SASS files