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

ts-standard

v12.0.2

Published

TypeScript Standard Style based on StandardJS

Downloads

168,598

Readme

Tests npm npm License TS-Standard - TypeScript Standard Style Guide Dependabot badge

ts-standard

TypeScript Style Guide, with linter and automatic code fixer based on StandardJS

💾 Install

npm install --save-dev ts-standard

⌨️ Basic Usage

ts-standard

Enable auto code fixing

ts-standard --fix

Note: A tsconfig.json or similar project file is required. See TSConfig section below for more details

📜 Help

ts-standard - Standard for TypeScript! (https://github.com/standard/ts-standard)

Usage:
  ts-standard <flags> [FILES...]

  If FILES is omitted, all JavaScript/TypeScript source files (*.js, *.jsx, *.mjs, *.cjs, *.ts, *.tsx)
  in the current working directory are checked, recursively.

  Certain paths (node_modules/, coverage/, vendor/, *.min.js, and
  files/folders that begin with '.' like .git/) are automatically ignored.

  Paths in a project's root .gitignore file are also automatically ignored.

Flags:
      --fix       Automatically fix problems
  -p, --project   Specify ts-config location (default: ./tsconfig.eslint.json or ./tsconfig.json)
      --version   Show current version
  -h, --help      Show usage information

Flags (advanced):
      --stdin     Read file text from stdin
      --ext       Specify JavaScript/TypeScript file extensions
      --global    Declare global variable
      --plugin    Use custom eslint plugin
      --env       Use custom eslint environment
      --parser    Use custom ts/js parser (default: @typescript-eslint/parser)

🧬 TSConfig: Linting with Type Information

By default ts-standard will search the current working director (cwd) for the following in order

  1. tsconfig.eslint.json
  2. tsconfig.json

You can also manually configure the location of the tsconfig file by either passing the path to the --project flag or adding a ts-standard configuration property to your package.json file.

{
  "ts-standard": {
    "project": "path/to/tsconfig.json"
  }
}

🗑 Ignoring files and folders

You can add an ignore property to your package.json ts-standard configuration settings.

{
  "ts-standard": {
    "ignore": [
      "dist",
      "src/**/*.js"
    ]
  }
}

🚫 Please change X rule

This project has no control over the rules implemented, as such this project cannot change any of the rules that have been configured. If you want to discuss the rules, please visit the rules configuration repo eslint-config-standard-with-typescript.

🧙 Why

This utility was designed to be the standard equivalent for typescript. Underneath the hood, this utility uses the same standard-engine and combines that engine with the official eslint-config-standard-with-typescript ruleset.

You can also choose to just use eslint with the eslint-config-standard-with-typescript shareable config instead and achieve the same results as this project. But ts-standard saves you from having to manually install all the extra dependencies and may reduce configuration overhead.

🎉 Special Thanks

Special thanks to standard for inspiration and some shared code and to eslint-config-standard-with-typescript for creating a typescript specific standard.

📋 Contributing Guide

I welcome all pull requests. Please make sure you add appropriate test cases for any features added. Before opening a PR please make sure to run the following scripts:

  • npm run lint:standard checks for code errors and format according to standard
  • npm test make sure all tests pass