open-index/open-npm huggingface dataset:
npm package: @socifi/babel-config
Description: SOCIFI default babel config
Author: Michal Ozogán
Latest version: 1.0.0

# SOCIFI Default Babel Configuration

[![npm version](https://badge.fury.io/js/%40socifi%2Fbabel-config.svg)](https://badge.fury.io/js/%40socifi%2Fbabel-config)
[![CircleCI](https://circleci.com/gh/socifi/babel-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/babel-config/tree/master)

This is default configuration for Babel.
npm package: @socifi/browserslist-config
Description: SOCIFI default browserslist config
Author: Michal Ozogán
Latest version: 0.1.0

# SOCIFI Default Browserslist Configuration

[![npm version](https://badge.fury.io/js/%40socifi%2Fbrowserslist-config.svg)](https://badge.fury.io/js/%40socifi%2Fbrowserslist-config)
[![CircleCI](https://circleci.com/gh/socifi/browserslist-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/browserslist-config/tree/master)

This is default configuration for Browserslist.
npm package: @socifi/commitlint-config
Description: Shareable config for linting commit messages.
Author: Michal Ozogán
Latest version: 1.1.0

# Commitlint Config

[![npm version](https://badge.fury.io/js/%40socifi%2Fcommitlint-config.svg)](https://badge.fury.io/js/%40socifi%2Fcommitlint-config)
[![CircleCI](https://circleci.com/gh/socifi/commitlint-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/commitlint-config/tree/master)

Shareable config for [commitling](https://github.com/marionebl/commitlint).

## How to use

Create ```commitlint.config.js``` file and enter following config:

```javascript
module.exports = {
    extends: ['@socifi/commitlint-config'],
};

```

## Format of Commit message

```Changed: CON-865 Some change in code.```

### Type

Following types are allowed:

- **Changed**
- **Fixed**
- **Removed**
- **Added**
- **Depreciated**
- **Docs**
- **Refactored**
- **Test** - should not be in master branch
- **InProgress, WIP** - should not be in master branch

### Reference

Reference to JIRA issue. eg. CON-156. It is recommended but not required.

### Commit message

MUST exist.
npm package: @socifi/eslint-config
Description: Shared ESLint config used in SOCIFI
Author: Michal Ozogán
Latest version: 2.10.2

# ESLint Config SOCIFI

[![npm version](https://badge.fury.io/js/%40socifi%2Feslint-config.svg)](https://badge.fury.io/js/%40socifi%2Feslint-config)
[![CircleCI](https://circleci.com/gh/socifi/eslint-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/eslint-config/tree/master)


This is default ESlint configurations for projects in SOCIFI.

## Usage

First install the package:

```nodemon
npm install @socifi/eslint-config --save-dev
```

and update you ESLint configuration:

```javascript
module.exports = {
    extends: [
        '@socifi',
    ],
};

```

In basic configuration following plugins are included:

- **import** - We use ECMAScript 6 modules.
- **jsdoc** - Predefined style for comments of methods.
- **promise** - Predefined style for promises.
- **compat** - To check that used features are supported by certain browsers.
- **unicorn** - Various lints.
- **filenames** - Lint file names.
- **sonar** - various piggy code detection
- **typescript**
- **array-func**

There are more extendable configurations for tests or different envs:

```javascript
module.exports = {
    extends: [
        '@socifi',
        '@socifi/eslint-config/react',
        '@socifi/eslint-config/jasmine',
        '@socifi/eslint-config/jest',
        '@socifi/eslint-config/babel-resolver',
    ],
};
```
npm package: @socifi/jest-config
Description: SOCIFI default jest config
Author: Michal Ozogán
Latest version: 2.4.1

# SOCIFI Default Jest Configuration

[![npm version](https://badge.fury.io/js/%40socifi%2Fjest-config.svg)](https://badge.fury.io/js/%40socifi%2Fjest-config)
[![CircleCI](https://circleci.com/gh/socifi/jest-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/jest-config/tree/master)

This is default configuration for jest that test our javascript libraries.

## What is included

Jest packages with junit reporter. It uses babel to parse ECMAScript 6. 

All tests results are generated to tests_results folder. Default folders:

- ./tests - For your test code. All files should be in format *.test.js
- ./src - Your source code
- ./dist - Your compiled source code.

## How to use it

First, install this package:

```nodemon
npm install @socifi/jest-config --save-dev
```

Then create your jest.config.js file:

```javascript
module.exports = require('@socifi/jest-config')();
```

This will test your code in src directory and it will generate junit.xml file and coverage report. 

If you want to test your build files, use:

 ```javascript
 module.exports = require('@socifi/jest-config')('build');
 ```
 
 Coverage tests are skipped and junit tests will generate junit-bundle.xml file. During the tests all your links to src folder will be replace with link to dist folder.
npm package: @socifi/rollup-config
Description: SOCIFI default rollup config
Author: Michal Ozogán
Latest version: 2.2.2

# SOCIFI Default Rollup Configuration

[![npm version](https://badge.fury.io/js/%40socifi%2Frollup-config.svg)](https://badge.fury.io/js/%40socifi%2Frollup-config)
[![CircleCI](https://circleci.com/gh/socifi/rollup-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/rollup-config/tree/master)

This is default configuration for rollup that compile javascript libraries.

## What is included

It parse ECMAScript 6 javascript syntax using Babel env preset. Supported browsers are defined from package.json of compiled library. Default configuration can also handle Flow Type syntax.

All files are bundled separately. It allowed to create smaller files with compilers that does not have tree shaking like webpack.

To the destination folder are copied .js.flow so the library can be use with Flow Types.

## How to use it

First, install this package:

```nodemon
npm install @socifi/rollup-config --save-dev
```

Then create your rollup.config.js file:

```javascript
import getConfig from 'ui-rollup-config';
import path from 'path';
import packageJson from './package.json';

export default getConfig(packageJson, path.resolve(__dirname, 'src'), {
    custom: 'settings',
});
```
npm package: @socifi/semantic-release-config
Description: Shareable config for semantic release
Author: Michal Ozogán
Latest version: 1.0.1

# Semantic release config

[![npm version](https://badge.fury.io/js/%40socifi%2Fsemantic-release-config.svg)](https://badge.fury.io/js/%40socifi%2Fsemantic-release-config)
[![CircleCI](https://circleci.com/gh/socifi/semantic-release-config/tree/master.svg?style=shield)](https://circleci.com/gh/socifi/semantic-release-config/tree/master)

Shareable config for deploying javascript projects by [semantic release](https://github.com/semantic-release/semantic-release).

## How to use

Install this config:

```nodemon
npm install @socifi/semantic-release-config --save-dev
```

Create ```release.config.js``` file and put there following content:

```javascript
module.exports = {
    extends: '@socifi/semantic-release-config',
};
```

In npm script you can launch ```semantic-release``` when you want to deploy your app.

## Stages of deploy

Each deployment have following stages:

- **Verify Conditions** - General check that all access token are set and library is ready to deploy.
- **Get last release** - Get all commits that appeared on git since last deploy.
- **Analyze commits** - Based on commit messages determine, which semantic version release or if release at all.
- **Verify release** - General check if everything is ok.
- **Generate notes** - Generate changelog based on commits. Test and InProgress commits will not appear in this.
- **Create Git tag**
- **Prepare** - Update changelog, update npm version, commit changed files and push it to GitHub.
- **Publish** - Publish npm version and release GitHub tag.
- **Success** - Notify about new version in Slack

If you don't want to release commit in master, just add NO_RELEASE to commit message. For new major version add BREAKING to commit message.

## Variables on CI

Following variables must be set in CI:

- GH_TOKEN
- GIT_USERNAME
- GIT_EMAIL
- NPM_TOKEN
- SLACK_WEBHOOK