6.0.2 • Published 4 years ago

gd-scripts v6.0.2

Weekly downloads
18
License
MIT
Repository
github
Last release
4 years ago

Introduction

This is a CLI that abstracts away all configuration for my open source projects including linting, testing, building, running, and more.

Installation

npm:

npm install --save-dev gd-scripts

yarn:

yarn add -D gd-scripts

Usage

This is a CLI and exposes a bin called gd-scripts. I don't really plan on documenting or testing it super duper well because it's really specific to my needs. You'll find all available scripts in packages/gd-scripts/src/scripts.

This project is also used to run scripts like building and testing on itself. If you look in the package.json, you'll find scripts with node src {scriptName}. This serves as an example of some of the things you can do with gd-scripts.

Configuration

Unlike react-scripts, gd-scripts allows you to specify your own configuration for things and have that plug directly into the way things work with gd-scripts. There are various ways that it works, but basically if you want to have your own config for something, just add the configuration and gd-scripts will use that instead of it's own internal config. In addition, gd-scripts exposes its configuration so you can use it and override only the parts of the config you need to.

This can be a very helpful way to make editor integration work for tools like ESLint which require project-based ESLint configuration to be present to work.

Note: gd-scripts intentionally does not merge things for you when you start extending configs to make it less magical and more straightforward. Extending can take place on your terms. I think this is actually a great way to do this.

eslint

To enable editor support for eslint, you can create a .eslintrc.js file on the root folder, containing:

module.exports = require('gd-scripts/eslint')

Or if you want to extend it:

const baseConfig = require('gd-scripts/eslint')

const extendedConfig = {
  // ...
}

module.exports = {
  ...baseConfig,
  ...extendedConfig,
}

prettier

To enable editor support for prettier, you can create a .prettierrc.js file on the root folder, containing:

module.exports = require('gd-scripts/prettier')

typescript

To enable editor support for typescript, you can create a tsconfig.json file on the root folder, containing:

{
  "extends": "./node_modules/gd-scripts/typescript.json"
}

Or if you want to extend it:

{
  "extends": "./node_modules/gd-scripts/typescript.json",
  "compilerOptions": {
    // ...
  }
}

semantic-release

In order to use the default config for semantic-release, you can add a release.config.js file on the root of your project, containing:

module.exports = require('gd-scripts/release.config')

Or if you want to extend it:

const baseConfig = require('gd-scripts/release.config')

const extendedConfig = {
  // ...
}

module.exports = {
  ...baseConfig,
  ...extendedConfig,
}

Inspiration

This is inspired by kcd-scripts, which is heavy inspired by react-scripts.

LICENSE

MIT

6.0.1

4 years ago

6.0.2

4 years ago

6.0.0

4 years ago

5.0.9

4 years ago

5.0.8

5 years ago

5.0.7

5 years ago

5.0.6

5 years ago

5.0.5

5 years ago

5.0.4

5 years ago

5.0.3

5 years ago

5.0.2

5 years ago

5.0.1

5 years ago

5.0.0

5 years ago

4.0.0

5 years ago

0.0.0-beta.16

5 years ago

0.0.0

5 years ago

0.0.0-beta.15

5 years ago

0.0.0-beta.14

5 years ago

0.0.0-beta.13

5 years ago

0.0.0-beta.12

5 years ago

0.0.0-beta.11

5 years ago

0.0.0-beta.10

5 years ago

0.0.0-beta.9

5 years ago

3.1.4

6 years ago

0.0.0-beta.8

6 years ago

3.1.3

6 years ago

0.0.0-beta.7

6 years ago

0.0.0-beta.6

6 years ago

0.0.0-beta.5

6 years ago

0.0.0-beta.4

6 years ago

3.1.2

6 years ago

0.0.0-beta.3

6 years ago

0.0.0-beta.2

6 years ago

0.0.0-beta.1

6 years ago

0.0.0-beta.0

6 years ago

3.1.1

6 years ago

3.1.0

6 years ago

3.0.1

6 years ago

1.4.0-beta.13

6 years ago

1.4.0-beta.12

6 years ago

3.0.0

6 years ago

2.0.0

6 years ago

1.4.0-beta.11

6 years ago

1.4.0-beta.10

6 years ago

1.4.0-beta.9

6 years ago

1.4.0-beta.8

6 years ago

1.4.0-beta.7

6 years ago

1.4.0-beta.6

6 years ago

1.4.0-beta.5

6 years ago

1.4.0-beta.4

6 years ago

1.4.0-beta.3

6 years ago

1.4.0-beta.2

6 years ago

1.4.0-beta.1

6 years ago

1.3.4

6 years ago

1.3.3

6 years ago

1.3.2

6 years ago

1.3.1

6 years ago

1.3.0

6 years ago

1.2.0

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.3-beta.6

6 years ago

1.0.2-beta.5

6 years ago

1.0.2-beta.4

6 years ago

1.0.2-beta.3

6 years ago

1.0.2-beta.2

6 years ago

1.0.2-beta.1

6 years ago

1.0.2-beta.0

6 years ago

1.0.2-beta

6 years ago

0.0.1-beta

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.1.13

6 years ago

0.1.12

6 years ago

0.1.11

6 years ago

0.1.10

6 years ago

0.1.9

6 years ago

0.1.8

6 years ago

0.1.7

6 years ago

0.1.6

6 years ago

0.1.5

6 years ago

0.1.4

6 years ago

0.1.3

6 years ago

0.1.2

6 years ago

0.1.1

6 years ago

0.1.0

6 years ago