Skip to content

Commit

Permalink
1.0.0 (#1)
Browse files Browse the repository at this point in the history
* Add base repo files

* Add npm-package-json-lint config file

* Add package.json

* Add docs

* Add tests
  • Loading branch information
tclindner authored Feb 19, 2017
1 parent 2b14982 commit a35641f
Show file tree
Hide file tree
Showing 15 changed files with 507 additions and 0 deletions.
12 changes: 12 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Full documentation can be found at editorconfig.org
# This requires a plugin to be installed in the editor of choice
# Link to info on plugins can be found here - http://editorconfig.org/#download
root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
3 changes: 3 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "eslint-config-tc"
}
8 changes: 8 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Auto detect text files and perform LF normalization
* text=auto
* text eol=lf

# Denote all files that are truly binary and should not be modified.
*.png binary
*.eot binary
*.woff binary
70 changes: 70 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
####################################
####################################
### OS Files
####################################
####################################
Thumbs.db
.DS_Store




####################################
####################################
### Git
####################################
####################################
*.orig




####################################
####################################
### Sublime Text
####################################
####################################
# cache files for sublime text
*.tmlanguage.cache
*.tmPreferences.cache
*.stTheme.cache

# workspace files are user-specific
*.sublime-workspace

# sublime project files
*.sublime-project

# sftp configuration file
sftp-config.json




####################################
####################################
### Node
####################################
####################################
# Logs
logs
*.log

# Coverage directory used by tools like istanbul
coverage

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release

# Dependency directory
node_modules




####################################
####################################
### Mocha
####################################
####################################
mocha.json
99 changes: 99 additions & 0 deletions .jscsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
{
"disallowEmptyBlocks": true,
"disallowKeywordsOnNewLine": ["else"],
"disallowMixedSpacesAndTabs": true,
"disallowMultipleLineStrings": true,
"disallowMultipleVarDecl": true,
"disallowNewlineBeforeBlockStatements": true,
"disallowQuotedKeysInObjects": "allButReserved",
"disallowSpaceAfterObjectKeys": true,
"disallowSpaceAfterPrefixUnaryOperators": true,
"disallowSpaceBeforePostfixUnaryOperators": true,
"disallowSpacesInAnonymousFunctionExpression": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInCallExpression": true,
"disallowSpacesInFunction": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInFunctionDeclaration": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInNamedFunctionExpression": {
"beforeOpeningRoundBrace": true
},
"disallowSpacesInsideArrayBrackets": "all",
"disallowSpacesInsideObjectBrackets": "all",
"disallowSpacesInsideParentheses": true,
"disallowTrailingComma": true,
"disallowYodaConditions": true,
"requireBlocksOnNewline": true,
"requireCapitalizedConstructors": true,
"requireCommaBeforeLineBreak": true,
"requireCurlyBraces": [
"if",
"else",
"for",
"while",
"do",
"try",
"catch",
"case",
"default"
],
"requireDotNotation": true,
"requireOperatorBeforeLineBreak": true,
"requirePaddingNewlinesBeforeKeywords": [
"do",
"for",
"switch",
"case",
"try",
"void",
"while",
"with"
],
"requireParenthesesAroundIIFE": true,
"requireSpaceAfterBinaryOperators": true,
"requireSpaceAfterKeywords": [
"do",
"for",
"else",
"switch",
"case",
"try",
"catch",
"void",
"while",
"with",
"return",
"typeof"
],
"requireSpaceBeforeBinaryOperators": true,
"requireSpaceBeforeBlockStatements": true,
"requireSpaceBeforeKeywords": [
"else",
"while",
"catch"
],
"requireSpaceBeforeObjectValues": true,
"requireSpaceBetweenArguments": true,
"requireSpacesInAnonymousFunctionExpression": {
"beforeOpeningCurlyBrace": true
},
"requireSpacesInConditionalExpression": true,
"requireSpacesInForStatement": true,
"requireSpacesInFunction": {
"beforeOpeningCurlyBrace": true
},
"requireSpacesInFunctionDeclaration": {
"beforeOpeningCurlyBrace": true
},
"requireSpacesInNamedFunctionExpression": {
"beforeOpeningCurlyBrace": true
},
"safeContextKeyword": [],
"validateIndentation": 2,
"validateParameterSeparator": ", ",
"validateQuoteMarks": { "mark": "'", "escape": true }
}
Empty file added .npmignore
Empty file.
3 changes: 3 additions & 0 deletions .npmpackagejsonlintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"extends": "./index.js"
}
27 changes: 27 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
git:
depth: 1

branches:
only:
- master

sudo: false

language: node_js

node_js:
- "4"
- "5"
- "6"
- "7"

cache:
directories:
- node_modules

before_script:
- npm prune

script:
- npm run lint
- npm test
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Change Log
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).

## [Unreleased]
### Added

### Changed

### Fixed

### Removed


## [1.0.0] - 2017-02-18
- First release
71 changes: 71 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Contributing

## System Dependencies

### Node

* [Node.js](https://nodejs.org/) - v4.2.0+
* [npm](https://www.npmjs.com/) - v2.14.7+

## Install project dependencies

### Code

* Fork and clone the npm-package-json-lint-config-default repo

### Install project dependencies

`npm install`

This installs dependencies from `package.json`.

## Code guidelines

### JavaScript

npm-package-json-lint-config-default utilizes both ESLint and JSCS to enforce JavaScript standards. Please see the `.eslintrc.json` file for ESLint config and `.jscsrc` for JSCS config.

* [eslint](https://github.com/eslint/eslint)
* [jscs](https://github.com/jscs-dev/node-jscs)

#### JSON

npm-package-json-lint-config-default utilizes JSON Lint to ensure JSON files are valid.

* [jsonlint](https://github.com/zaach/jsonlint)

#### package.json

npm-package-json-lint-config-default utilizes npm-package-json-lint to ensure the package.json file is valid.

* [npm-package-json-lint](https://github.com/tclindner/npm-package-json-lint)

#### Checking coding style

Run `npm run lint` before committing to ensure your changes follow our coding standards.

## Versioning

Please use the following grunt commands to increment the package's version numbers
EX: Assume current version is 0.0.1

`npm version patch`

If you run this command the version will increase the patch number (ie 0.0.2)

`npm version minor`

If you run this command the version will increase the minor number (ie 0.1.0)

`npm version major`

If you run this command the version will increase the major number (ie 1.0.0)


## EditorConfig

EditorConfig helps maintain consistent file formatting between different editors and developers. Please [install the plugin for you editor of choice](https://editorconfig.org/#download). Please see the `.editorconfig` file at the root of this repo to see what settings are enforced.

## License

Contributions to npm-package-json-lint-config-default are subject to the [MIT License](https://github.com/tclindner/npm-package-json-lint-config-default/blob/master/LICENSE).
65 changes: 65 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# npm-package-json-lint-config-default

> Default [npm-package-json-lint](https://github.com/tclindner/npm-package-json-lint) shareable config

[![license](https://img.shields.io/github/license/tclindner/npm-package-json-lint-config-default.svg?maxAge=2592000&style=flat-square)](https://github.com/tclindner/npm-package-json-lint-config-default/blob/master/LICENSE)
[![npm](https://img.shields.io/npm/v/npm-package-json-lint-config-default.svg?maxAge=2592000?style=flat-square)](https://www.npmjs.com/package/npm-package-json-lint-config-default)
[![Travis](https://img.shields.io/travis/tclindner/npm-package-json-lint-config-default.svg?maxAge=2592000?style=flat-square)](https://travis-ci.org/tclindner/npm-package-json-lint-config-default)
[![Dependency Status](https://david-dm.org/tclindner/npm-package-json-lint-config-default.svg?style=flat-square)](https://david-dm.org/tclindner/npm-package-json-lint-config-default)
[![devDependency Status](https://david-dm.org/tclindner/npm-package-json-lint-config-default/dev-status.svg?style=flat-square)](https://david-dm.org/tclindner/npm-package-json-lint-config-default#info=devDependencies)


## What is npm-package-json-lint-config-default?

Shared configuration for npm-package-json-lint. Follow the instructions below to easily include this configuration in another project without having to duplicate the file.

## How do I install it?

First thing first, let's make sure you have the necessary pre-requisites.

### System Dependencies

#### Node

* [Node.js](https://nodejs.org/) - v4.2.0+
* [npm](http://npmjs.com) - v2.14.7+

### Command

```bash
npm install npm-package-json-lint-config-default --save-dev
```

## Usage

Add the following to your `.npmpackagejsonlintrc.json` file:

```json
{
"extends": "npm-package-json-lint-config-default"
}
```

If you need to override a rule, your `.npmpackagejsonlintrc.json` file should look like the example below. All shared rules will be used, but `license-type` will be turned off.

```json
{
"extends": "npm-package-json-lint-config-default",
"rules": {
"license-type": "off"
}
}
```

## Contributing

Please see [CONTRIBUTING.md](CONTRIBUTING.md).

## Release History

Please see [CHANGELOG.md](CHANGELOG.md).

## License

Copyright (c) 2017 Thomas Lindner. Licensed under the MIT license.
Loading

0 comments on commit a35641f

Please sign in to comment.