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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@michaelhelvey/vite-config

v2.0.2

Published

sane configuration format & defaults for vite-plus

Downloads

49

Readme

@michaelhelvey/vite-config

Opinionated defaults and configuration helpers for VitePlus.

Getting Started

Install the package:

npm install -D @michaelhelvey/vite-config

Or use the package manager of your choice.

Then create your config file at ./vite.config.ts:

import { defineConfig } from "@michaelhelvey/vite-config";

export default await defineConfig();

While this is all you have to do to get (what I consider to be) reasonable defaults for linting, formatting, and testing, out of the box, you can also pass in additional options to the defineConfig function. These options will be deeply merged (using lodash.merge) into the base configuration, so you don't have to worry about manually spreading defaults:

import { defineConfig, FileTypes } from "@michaelhelvey/vite-config";

export default await defineConfig({
  lint: {
    overrides: [
      {
        files: FileTypes.JS_SOURCE,
        rules: {
          "no-console": "off",
        },
      },
    ],
  },
});

Note that while I encourage defining everything within overrides so as to save your own sanity regarding what rules are enabled for what file types, you certainly don't have to do that if you want the same rules enabled for everything. Use the oxlint config reference for more information.

Helpers

There's a few different helpers defined by the package to help you build your own configuration files.

  • FileTypes: an enumeration of various patterns defining common groupings of files within modern Typescript projects.
  • RULES: An exported, strongly-typed list of all oxlint rules. You can iterate over this in order to build up dynamic lists of rules in code rather than statically defining them. See ./src/index.ts in this project to see what I mean.
  • ruleSelector: A function that returns a dictionary of rules for a given set of categories and sources (where a category is something like "correctness" and a source is something like "eslint").
  • Typescript types corresponding to many of the above, such as Rule, RuleSource, RuleCategory and RuleName.

You are encouraged to read the source of ./src/index.ts within this repository for more details.

Development

You can re-generate the rules by scraping the oxlint website by running bun run build:generate.

Publishing is only performed locally.

License

MIT