Coder Social home page Coder Social logo

ts-quick's Introduction

lightning bolt

ts-quick️

Zero-configuration JavaScript static analysis tool

Build Status Code Coverage NPM Version NPM License


Easily catch bugs and enforce JSDoc types throughout your JavaScript project using the proven power of TypeScript. Either use it as a standalone CLI, or add it to your test script to ensure that your JS the best it can be.

ts-quick reporting two errors

Install

$ npm install --global ts-quick

Usage

$ ts-quick --help

  Usage
    $ ts-quick [<file|glob> ...]

  Options
    --init         Add ts-quick to your project
    --implicitAny  Allow variables to implicitly have the "any" type
    --ignore       Additional paths to ignore  [Can be set multiple times]
    --cwd=<dir>    Working directory for files

  Examples
    $ ts-quick
    $ ts-quick index.js
    $ ts-quick *.js !foo.js
    $ ts-quick --init
    $ ts-quick --implicitAny

  Tips
    Put options in package.json instead of using flags so other tools can read it.

Workflow

The recommended workflow is to add ts-quick locally to your project to have it run with tests.

Simply run $ ts-quick --init to add ts-quick to your package.json.

Before

{
  "name": "example-package",
  "scripts": {
    "test": "jest"
  },
  "devDependencies": {
    "jest": "^23.0.0"
  }
}

After

{
  "name": "example-package",
  "scripts": {
    "test": "ts-quick && jest"
  },
  "devDependencies": {
    "jest": "^23.0.0",
    "ts-quick": "^1.1.0"
  }
}

Then just run $ npm test and ts-quick will be run before your tests.

Config

You can configure options in ts-quick by putting them in package.json:

{
  "name": "example-package",
  "ts-quick": {
    "implicitAny": true,
    "ignores": ["./test", "foo.js"]
  }
}

implicitAny

Type: boolean
Default: false (types are required)

If enabled, ts-quick allows expressions and declarations to have an implied any type.

ignores

Type: Array

Some paths are ignored by default, including paths in .gitignore. Additional ignores can be added here.

License

ISC © Matan Kushner

Attribution

The ts-quick logo is a derivative of the "flash-outline" icon in Typicons by stephenhutchings, used under CC BY-SA.
The ts-quick logo is licensed under CC BY-SA by Matan Kushner.

ts-quick's People

Contributors

renovate-bot avatar renovate[bot] avatar dependabot[bot] avatar matchai avatar

Stargazers

Sung Jeon avatar Alexis H. Munsayac avatar Yuki Okushi avatar Sora Morimoto avatar Luciano Nooijen avatar Seb Insua avatar Chris Watson avatar Enrique Benitez avatar Andrew Prentice avatar Tamara Robichet avatar  avatar Jan Bílek avatar Pooya Parsa avatar Morgan Touverey Quilling avatar Osman Zeki avatar Martin Alix avatar Jason Etcovitch avatar  avatar Youssef Habri avatar Josh Star avatar Tiffany Le-Nguyen avatar

Watchers

James Cloos avatar  avatar  avatar

ts-quick's Issues

Trouble getting it to work

Just running a quick example, I'm unsure what I'm doing wrong:

package.json

{
  "name": "test",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "scripts": {
    "test": "ts-quick"
  },
  "devDependencies": {
    "ts-quick": "^1.1.15"
  }
}

index.js

function square(a) {
  return a * a
}

add(1, 2)

After running npm install or yarn to install dependencies, I run npm test or yarn test, but I don't get any output. Am I missing something? Or is it too early in development to be testing out?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.