npm package: @sdc224/logger-ts
Description: A Logger in Typescript
Author: Sourodeep Chatterjee
Latest version: 1.0.7

[![TypeScript version][ts-badge]][typescript-39]
[![Node.js version][nodejs-badge]][nodejs]
[![MIT][license-badge]][license]
[![Build Status - Travis][travis-badge]][travis-ci]
[![GitHub Actions][gha-badge]][gha-ci]
[![Sponsor][sponsor-badge]][sponsor]

# logger-ts

👩🏻‍💻 Developer Ready: A comprehensive template. Works out of the box for most [Node.js][nodejs] projects.

🏃🏽 Instant Value: All basic tools included and configured:

- [TypeScript][typescript] [3.9][typescript-39]
- [ESLint][eslint] with some initial rules recommendation
- [Jest][jest] for fast unit testing and code coverage
- Type definitions for Node.js and Jest
- [Prettier][prettier] to enforce consistent code style
- NPM [scripts](#available-scripts) for common operations
- simple example of TypeScript code and unit test
- .editorconfig for consistent file format
- example configuration for [GitHub Actions][gh-actions] and [Travis CI][travis]

🤲 Free as in speech: available under the MIT license.

## Getting Started

This project is intended to be used with the latest Active LTS release of [Node.js][nodejs].

### Use as a repository template

To start, just click the **[Use template][repo-template-action]** link (or the green button). Now start adding your code in the `src` and unit tests in the `__tests__` directories.

### Clone repository

To clone the repository use the following commands:

```bash
git clone https://github.com/sdc224/logger-ts
```

### Installation

First go to the repo directory

```bash
cd logger-ts
```

For npm lovers

```bash
npm install
```

For yarn lovers

```bash
yarn
```

### Download latest release

Download and unzip current `master` branch or one of tags:

```sh
wget https://github.com/sdc224/logger-ts/archive/master.zip -O logger-ts.zip
unzip logger-ts.zip && rm logger-ts.zip
```

## Available Scripts

- `clean` - remove coverage data, Jest cache and transpiled files,
- `build` - transpile TypeScript to ES6,
- `build:watch` - interactive watch mode to automatically transpile source files,
- `lint` - lint source files and tests,
- `test` - run tests,
- `test:watch` - interactive watch mode to automatically re-run tests

## Additional Informations

### Writing tests in JavaScript

Writing unit tests in TypeScript can sometimes be troublesome and confusing. Especially when mocking dependencies and using spies.

This is **optional**, but if you want to learn how to write JavaScript tests for TypeScript modules, read the [corresponding wiki page][wiki-js-tests].

## Backers & Sponsors

Support this project by becoming a sponsor.

## License

Licensed under the MIT. See the [LICENSE](https://github.com/sdc224/logger-ts/blob/master/LICENSE) file for details.

[ts-badge]: https://img.shields.io/badge/TypeScript-3.9-blue.svg
[nodejs-badge]: https://img.shields.io/badge/Node.js->=%2012.13-blue.svg
[nodejs]: https://nodejs.org/dist/latest-v12.x/docs/api/
[travis-badge]: https://travis-ci.org/sdc224/logger-ts.svg?branch=master
[travis-ci]: https://travis-ci.org/sdc224/logger-ts
[gha-badge]: https://github.com/sdc224/logger-ts/workflows/GitHub%20Actions/badge.svg
[gha-ci]: https://github.com/sdc224/logger-ts/actions
[typescript]: https://www.typescriptlang.org/
[typescript-39]: https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-9.html
[license-badge]: https://img.shields.io/badge/license-MIT-blue.svg
[license]: https://github.com/sdc224/logger-ts/blob/master/LICENSE
[sponsor-badge]: https://img.shields.io/badge/♥-Sponsor-fc0fb5.svg
[sponsor]: https://github.com/sponsors/sdc224
[jest]: https://facebook.github.io/jest/
[eslint]: https://github.com/eslint/eslint
[wiki-js-tests]: https://github.com/sdc224/logger-ts/wiki/Unit-tests-in-plain-JavaScript
[prettier]: https://prettier.io
[gh-actions]: https://github.com/features/actions
[travis]: https://travis-ci.org
[repo-template-action]: https://github.com/sdc224/logger-ts/generate