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 🙏

© 2025 – Pkg Stats / Ryan Hefner

wayfindpc

v1.2.0

Published

Wayfind Package Creator - a fast opinionated Node project scaffolder for initializing new projects, linting, and formatting

Readme

Wayfind Package Controller

License: MIT eslint prettier

Prettier Supported Languages

Wayfind Package Controller (wayfindpc) is a fast, opinionated Node.js project scaffolder for initializing new projects, linting, and formatting.

It sets up a default set of linting and formatting tools, manages config files, and provides built-in commands to keep your code clean — all from a single devDependency.

✨ Features

  • Instant project setup with npx wayfindpc
  • Linting with ESLint using the Airbnb Base
  • Formatting with Prettier
  • Built-in format and lint commands
  • VSCode support preconfigured
  • Supports JS, TS, JSON, CSS, HTML, PHP, Markdown, and YAML
  • Formatting and limited linting support for JSX and TSX
  • No need to clutter your dev dependencies with all of the extra boilerplate or additional plugins
  • Only one devDependency needed: wayfindpc!

📦 What It Does

When you run wayfindpc, it:

  1. Prompts for a project name (or uses your existing one if run inside an existing Node project folder)
  2. Adds/updates "format" and "lint" scripts in package.json
  3. Installs wayfindpc as a devDependency
  4. Adds root-level config files with preconfigured settings:
    • .eslintrc.json
    • prettierrc.json
    • .eslintignore
    • .prettierignore
  5. Ensures VSCode resolves ESLint plugins cleanly by adding:
    • .vscode/settings.json

🚀 Getting Started

Create a new project (from an empty folder):

mkdir my-project
cd my-project
npx wayfindpc

This will prompt you for a project name. Optionally, you can provide the project name at the same time:

npx wayfindpc my-project-name

Add to an existing project:

cd existing-project
npx wayfindpc

This will add the linting/formatting config files and insert a lint and format script into your package.json. Note: if you already had these scripts, it will overwrite them.

Overwrite existing config files:

npx wayfindpc --force

🛠 Usage

Once installed, run these commands:

npm run format  # Fixes code style with ESLint + Prettier
npm run lint    # Checks for issues without modifying files

You can check the installed version at any time:

npx wayfindpc --version

Behind the scenes, these will use wayfindpc to run:

npx eslint . --fix && npx prettier --write . # Linting
npx eslint . && npx prettier --check . # Formatting

🧨 What --force Does

By default, wayfindpc never overwrites config files.

If the following files exist, they will be skipped:

  • .eslintrc.js
  • prettier.config.js
  • .eslintignore
  • .prettierignore
  • .vscode/settings.json

Use --force if:

  • You want to reapply the latest default files
  • You edited or deleted one and want it restored
  • You are upgrading to a newer version of wayfindpc
npx wayfindpc --force

This is safe. It only replaces the ESLint and Prettier config files and the VS Code settings file, not your source code.

🔍 Example Output

Your package.json will include:

"scripts": {
  "format": "wayfindpc format",
  "lint": "wayfindpc lint"
},
"devDependencies": {
  "wayfindpc": "^1.0.0"
}

You can customize the resulting settings files as needed, but they are designed to plug and play with no further action required.

📋 Requirements

  • Node.js: v18 or newer
  • npm: v9 or newer recommended
  • VSCode (optional): Assists you with visual feedback for linting errors

🧠 Philosophy

wayfindpc is intentionally opinionated.

It assumes you want:

  • Consistent formatting and linting
  • Fast setup
  • No config file sprawl

This program does not handle any git configurations.

If you prefer full customization or different linting stacks, this tool may not be for you. But if you want clean code with no fuss... welcome aboard!

📜 License

MIT © Wayfind Entertainment LLC