https://github.com/himynameisdave/loggit
🌲 A simple and beautiful logging utility for NodeJS.
https://github.com/himynameisdave/loggit
console-log logger logging logging-library loggit node-logger
Last synced: 8 months ago
JSON representation
🌲 A simple and beautiful logging utility for NodeJS.
- Host: GitHub
- URL: https://github.com/himynameisdave/loggit
- Owner: himynameisdave
- License: mit
- Created: 2015-01-20T16:41:16.000Z (about 11 years ago)
- Default Branch: main
- Last Pushed: 2023-01-06T16:56:23.000Z (about 3 years ago)
- Last Synced: 2025-08-02T13:51:55.238Z (8 months ago)
- Topics: console-log, logger, logging, logging-library, loggit, node-logger
- Language: TypeScript
- Homepage:
- Size: 2.16 MB
- Stars: 1
- Watchers: 2
- Forks: 1
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
---
`loggit` is a simple yet robust logger utility for NodeJS. To a degree, it is a wrapper around [`chalk`](https://www.npmjs.com/package/chalk) + `console.log`, so that I don't need to install `chalk` in every project and to standardize the way I do logging in various projects.
## Install
You can install it with NPM or Yarn:
```bash
yarn add loggit
npm install loggit
```
## Usage
`loggit` exposes two modules:
- `log` - A very simple logger function.
- `createLogger` - Returns a customized logger function.
### `log`
Provide `log` with a message string, as well as an optional color (of type [`chalk.ForegroundColor`](https://github.com/chalk/chalk/blob/02abeebac3fa41b346ad1f0b4674d371953da932/index.d.ts#L6)), and it will be logged to the console.
```typescript
import { log } from 'loggit';
log('hello world');
log('some error', 'red');
```
Argument | Type | Default
---|---|---
`message` | `string` | -
`color` | `chalk.ForegroundColor` | `'whiteBright'`
### `createLogger`
`createLogger` allows you to create loggers for various different "tasks" in your app/script. It is more akin to something like [`winston`](https://github.com/winstonjs/winston) than a regular `console.log`, in that it will log a timestamp and make your "task" very visible using a [`chalk.BackGroundColor`](https://github.com/chalk/chalk/blob/02abeebac3fa41b346ad1f0b4674d371953da932/index.d.ts#L31).
```typescript
import { createLogger } from 'loggit';
// Create a simple logger with default options
const logInfo = createLogger('info');
// Create a success logger, where the "task" will be logged with a green BG.
const logSuccess = createLogger('success', {
taskColor: 'bgGreen',
});
// Create an error logger, where the "task" will be red and the timestamp will be bright magenta.
const logError = createLogger('error', {
taskColor: 'bgRed',
timestampColor: 'redBright',
});
// Use the loggers
logInfo('Started the app');
logSuccess('Things are going well');
logError('Uh oh, something went wrong');
```
This example would write the following to the console:

Argument | Type | Default
---|---|---
`task` | `string` | -
`config` | `CreateLoggerConfig` | See below.
`config.taskColor` | `chalk.BackgroundColor` | `'bgCyanBright'`
`config.timestampColor` | `chalk.ForegroundColor` | `'cyanBright'`
Note that `createLogger` returns the `log` function, meaning that you can also customize the message color when using your custom logger.
```typescript
import { createLogger } from 'loggit';
const logInfo = createLogger('info');
logInfo('I will be yellow!', 'yellow');
```
## Contributing
If you have ideas or suggestions on how to improve this package, feel free to file an issue or better yet open a pull request! Please follow the existing code style (enforced by ESLint anyway), and please add/alter unit tests for any new or changed functionality.
## License
Licensed under MIT.
---
_✌️ Made by [Dave](https://himynameisdave.com)_