open-index/open-npm huggingface dataset:
npm package: @fimbul/bifrost
Description: Compatibility layer for TSLint rules
Author: Klaus Meinhardt
Latest version: 0.24.0

# Bifröst

Compatiblity layer for TSLint rules and formatters.

[![npm version](https://img.shields.io/npm/v/@fimbul/bifrost.svg)](https://www.npmjs.com/package/@fimbul/bifrost)
[![npm downloads](https://img.shields.io/npm/dm/@fimbul/bifrost.svg)](https://www.npmjs.com/package/@fimbul/bifrost)
[![Renovate enabled](https://img.shields.io/badge/renovate-enabled-brightgreen.svg)](https://renovateapp.com/)
[![CircleCI](https://circleci.com/gh/fimbullinter/wotan/tree/master.svg?style=shield)](https://circleci.com/gh/fimbullinter/wotan/tree/master)
[![Build status](https://ci.appveyor.com/api/projects/status/a28dpupxvjljibq3/branch/master?svg=true)](https://ci.appveyor.com/project/ajafff/wotan/branch/master)
[![codecov](https://codecov.io/gh/fimbullinter/wotan/branch/master/graph/badge.svg)](https://codecov.io/gh/fimbullinter/wotan)
[![Join the chat at https://gitter.im/fimbullinter/wotan](https://badges.gitter.im/fimbullinter/wotan.svg)](https://gitter.im/fimbullinter/wotan)

Make sure to also read the [full documentation of all available modules](https://github.com/fimbullinter/wotan#readme).

## Purpose

Allows TSLint rule authors to provide the same rules for Wotan without any refactoring.
Although `@fimbul/heimdall` already allows users to use your rules and formatters in Wotan, they still need to remember to use `-m @fimbul/heimdall` when running Wotan.
You can help these users by providing your rules in a format that Wotan understands without any plugin.

It also provides the exact opposite functionality: using rules originally written for Fimbullinter (wotan) as TSLint rule.

## Installation

```sh
npm install --save @fimbul/bifrost
# or
yarn add @fimbul/bifrost
```

## Using TSLint Rules and Formatters in Wotan

### Rules

Given a TSLint rule `my-foo` in a file `myFooRule.ts`, you simply create a file `my-foo.ts` with the following content:

```ts
import {wrapTslintRule} from '@fimbul/bifrost';
import {Rule} from './myFooRule.ts';

const Wrapped = wrapTslintRule(Rule, 'my-foo');
export {Wrapped as Rule};
```

If you want to use a different directory for your TSLint rules and their Wotan wrapper, you just need to adjust the paths in the above example.

### Formatters

Given a TSLint formatter `my-foo` in a file `myFooFormatter.ts`, you simply create a file `my-foo.ts` with the following content:

```ts
import {wrapTslintFormatter} from '@fimbul/bifrost';
import {Formatter} from './myFooFormatter.ts';

const Wrapped = wrapTslintFormatter(Formatter);
export {Wrapped as Formatter};
```

Note that findings with severity `suggestion` are reported as `warning` through TSLint formatters.

## Using Fimbullinter Rules in TSLint

Given a Fimbullinter rule `my-foo` in a file `my-foo.ts`, you simply create a file `myFooRule.ts` with the following content:

```ts
import {wrapRuleForTslint} from '@fimbul/bifrost';
import {Rule} from './my-foo.ts';

const Wrapped = wrapRuleForTslint(Rule);
export {Wrapped as Rule};
```

## License

Apache-2.0 © [Klaus Meinhardt](https://github.com/ajafff)
npm package: @fimbul/circular
Description: Angular integration of the Fimbullinter project
Author: Klaus Meinhardt
Latest version: 0.0.1

# @fimbul/circular

Angular integration of the [Fimbullinter project](https://github.com/fimbullinter/wotan).

## Install

```sh
npm install --save-dev @fimbul/circular
# or
yarn add -D @fimbul/circular
```

## Linting via Angular CLI

In your `angular.json`, under `projects / <projectName> / architect / lint`, replace the existing TSLint builder as follows:

```json
"lint": {
  "builder": "@fimbul/circular:lint",
  "options": {
  }
}
```

If you now run `ng lint [projectName]`, you are executing Fimbullinter instead of TSLint.

`"options"` can be used to configure the linter using [configuration options of the `wotan` CLI](https://github.com/fimbullinter/wotan/blob/master/packages/wotan/README.md#cli-options). For example `wotan --cache --config wotan:recommended --fix` translates to the following `options` object:

```json
"options": {
  "cache": true,
  "config": "wotan:recommended",
  "fix": true
}
```

If you do not explicitly configure the `project` option, it will automatically use the `tsConfig` options of that project's `build` and `test` targets.

### Global default options for all projects

If you find yourself specifying the same options for all projects, consider creating a [`.fimbullinter.yaml`](https://github.com/fimbullinter/wotan/blob/master/packages/wotan/README.md#adding-cli-defaults-to-fimbullinteryaml). This file contains default options used for all projects and the `wotan` CLI (in case you want to use that too). You can still override specific configurations per project using `"options"` as described above.

### Replacing TSLint

As you might know TSLint reached its end of life. Instead of jumping on the typescript-eslint hype-train, consider Fimbullinter as a replacement.
Spoiler: Fimbullinter will eventually be able to execute ESLint rules, so you can tap into the vast ecosystem of existing rules while using a linter that is actually intended to work with TypeScript.

The [builtin rules](https://github.com/fimbullinter/wotan/blob/master/packages/mimir/README.md#rules) provide improved versions of TSLint rules as well as completely new and original ones.

If you still want to use TSLint rules to ease the transition, there are two possibilites:

* [`@fimbul/valtyr`](https://github.com/fimbullinter/wotan/blob/master/packages/valtyr/README.md) provides full compatibility with TSLint and your existing `tslint.json` with almost no setup.
* [`@fimbul/heimdall`](https://github.com/fimbullinter/wotan/blob/master/packages/heimdall/README.md) allows using TSLint rules and formatters within Fimbullinter, so you can still use the rules you know and love while getting all the benefits of Fimbullinter's builtin rules.

## What's next?

This repository is intended to contain all sorts of Angular-related goodness for Fimbullinter. You can expect the addition of rules and configuration presets in the future.

## License

Apache-2.0 © [Klaus Meinhardt](https://github.com/ajafff)
npm package: @fimbul/ve
Description: Vue processor for wotan
Author: Klaus Meinhardt
Latest version: 0.24.0

# Vé

Wotan processor for Vue Single File Components (SFC)

[![npm version](https://img.shields.io/npm/v/@fimbul/ve.svg)](https://www.npmjs.com/package/@fimbul/ve)
[![npm downloads](https://img.shields.io/npm/dm/@fimbul/ve.svg)](https://www.npmjs.com/package/@fimbul/ve)
[![Renovate enabled](https://img.shields.io/badge/renovate-enabled-brightgreen.svg)](https://renovateapp.com/)
[![CircleCI](https://circleci.com/gh/fimbullinter/wotan/tree/master.svg?style=shield)](https://circleci.com/gh/fimbullinter/wotan/tree/master)
[![Build status](https://ci.appveyor.com/api/projects/status/a28dpupxvjljibq3/branch/master?svg=true)](https://ci.appveyor.com/project/ajafff/wotan/branch/master)
[![codecov](https://codecov.io/gh/fimbullinter/wotan/branch/master/graph/badge.svg)](https://codecov.io/gh/fimbullinter/wotan)
[![Join the chat at https://gitter.im/fimbullinter/wotan](https://badges.gitter.im/fimbullinter/wotan.svg)](https://gitter.im/fimbullinter/wotan)

Make sure to also read the [full documentation of all available modules](https://github.com/fimbullinter/wotan#readme).

## Purpose

Enable `wotan` to lint `*.vue` files. This works by extracting the `<script>` content of a single file component and feeding that into TypeScript.
The `lang` attribute is respected and defaults to `js` if not present. You can use every language TypeScript supports (currently `js`, `jsx`, `ts`, `tsx`).
It even works with type checking.


## Installation

```sh
npm install --save-dev @fimbul/wotan @fimbul/ve
# or
yarn add -D @fimbul/wotan @fimbul/ve
```

## Usage

Use as processor in your config:

```yaml
---
overrides:
  - files: "*.vue"
    processor: "@fimbul/ve"
```

There's also a configuration preset you can extend. This preset comes without any enabled rules and just provides the processor for `*.vue` files as described above.

```yaml
---
extends:
  - "@fimbul/ve"
```

## License

Apache-2.0 © [Klaus Meinhardt](https://github.com/ajafff)
npm package: @fimbul/ymir
Description: Core library for the Fimbullinter project
Author: Klaus Meinhardt
Latest version: 0.24.0

# Ymir

Core library for the Fimbullinter project.

[![npm version](https://img.shields.io/npm/v/@fimbul/ymir.svg)](https://www.npmjs.com/package/@fimbul/ymir)
[![npm downloads](https://img.shields.io/npm/dm/@fimbul/ymir.svg)](https://www.npmjs.com/package/@fimbul/ymir)
[![Renovate enabled](https://img.shields.io/badge/renovate-enabled-brightgreen.svg)](https://renovateapp.com/)
[![CircleCI](https://circleci.com/gh/fimbullinter/wotan/tree/master.svg?style=shield)](https://circleci.com/gh/fimbullinter/wotan/tree/master)
[![Build status](https://ci.appveyor.com/api/projects/status/a28dpupxvjljibq3/branch/master?svg=true)](https://ci.appveyor.com/project/ajafff/wotan/branch/master)
[![codecov](https://codecov.io/gh/fimbullinter/wotan/branch/master/graph/badge.svg)](https://codecov.io/gh/fimbullinter/wotan)
[![Join the chat at https://gitter.im/fimbullinter/wotan](https://badges.gitter.im/fimbullinter/wotan.svg)](https://gitter.im/fimbullinter/wotan)

Make sure to also read the [full documentation of all available modules](https://github.com/fimbullinter/wotan#readme).

## Purpose

This library provides the core types for addons and rules. This package is intended for developers only.

## License

Apache-2.0 © [Klaus Meinhardt](https://github.com/ajafff)