Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vsnthdev/itivrutaha
( इतिवृत्तः ) — An 👌 easy-to-use, 🛠️ configurable, Bun-first ⚡ console logger.
https://github.com/vsnthdev/itivrutaha
bun cli javascript library logger logging nodejs
Last synced: about 1 month ago
JSON representation
( इतिवृत्तः ) — An 👌 easy-to-use, 🛠️ configurable, Bun-first ⚡ console logger.
- Host: GitHub
- URL: https://github.com/vsnthdev/itivrutaha
- Owner: vsnthdev
- Created: 2019-06-02T14:27:17.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-01-17T10:57:06.000Z (11 months ago)
- Last Synced: 2024-10-28T16:58:53.420Z (about 2 months ago)
- Topics: bun, cli, javascript, library, logger, logging, nodejs
- Language: TypeScript
- Homepage:
- Size: 8.88 MB
- Stars: 9
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
( इतिवृत्तः ) — An 👌 easy-to-use, 🛠️ configurable, Bun-first ⚡ console logger.
**itivrutaha** is my first ever JavaScript *(initially)* project. It is a Bun-first *(developed, tested with [Bun](https://bun.sh) but also works in [Node](https://nodejs.org))* console logging module to be used in CLIs, GUI desktop apps & web servers.
> Tweet me @vsnthdev, I would love to know your opinion/experience on this project 😍
## 🚀 Migrating from v2.x
Version 3 is a complete rewrite with several features removed, trimmed down and optimized, while modernizing the codebase and adding Bun.js support.
The `v2.x.x` versions can be found in the [v2](https://github.com/vsnthdev/itivrutaha/tree/v2) branch containing the older version of `itivrutaha`.
### ⚠️ Major changes
1. Luxon has been replaced in favor of [date-format](https://www.npmjs.com/package/date-format) which is more lightweight.
2. Removed automatic logs when app starts, and how long it ran when the app exists. (An additional utility will be shipped in a later version.)
3. The `verboseIdentifer` and `quietIdentifier` config option has been removed.
4. `v3` no longer uses TypeScript classes, favors functional approach instead.
5. Multiple scopes (previously contexts) are now support by single instance of `itivrutaha` unlike previous.
6. File logging was completely removed.
7. The `:message` variable has been replaced by `:msg`.
8. Following variables are no longer supported `:node_path`, `:script_path`, `:node_version`, `:v8_version`, `:filename`, `:openssl_version`, `:electron_version`. These will be added again on request basis.## ⚡️ Features
1. Easy to customize according to your needs
2. Flexible theming support with [chalk](https://www.npmjs.com/package/chalk)
3. Different log levels (ex. silent, verbose etc) *(Planned)*
4. Ability to log without any ANSI characters *(Planned)*
5. Support for uppercase message types (ex. INFO instead of info) *(Planned)*## 💿 Installation
```bash
bun i itivrutaha
npm i itivrutaha # if you're using Node.js
```## 🚴♂️ Quick Start
After `itivrutaha` has been installed, you start using it by the following way 👇```typescript
import { itivrutaha, defaultConfig } from 'itivrutaha'const log = itivrutaha(defaultConfig)
// errors can be given directly, logs nicely
log.error(new Error('Ouch!'))// additional data can also be given for extra context
log.note('Point to be noted', { someData: 'very useful' })// entire thing can also be an object
log.okay({
msg: 'Not an info message'
})// a scope can be attached to easily identify
// which part of the application this log came from
log.success('Makes users happy', {}, 'web')// entire thing can also be an object
log.info({
msg: 'Nice to know something is happening',
scope: 'web',
extra: 'data',
maybeAnError: new Error('Something broke') // will be printed with trace
})// supports emoji, colors and theming
log.verbose("Always makes developer's life easy 😀")
```## 🛠 Building
* `bun install` — Installs required dependencies.
* `bun run dev` — Watches for changes & runs TypeScript compiler.
* `bun run build` — Freshly compiles TypeScript code.
* `npm run docs` — Freshly builds by reading code and templates.ℹ️ **Note:** You can run `bun run examples/index.ts` to test `itivrutaha` with the latest code.
## 📰 License
> The **itivrutaha** project is released under the [MIT license](https://github.com/vasanthdeveloper/itivrutaha/blob/main/LICENSE.md).
> [vsnth.dev](https://vsnth.dev) ·
> YouTube [@vsnthdev](https://vas.cx/videos) ·
> Twitter [@vsnthdev](https://vas.cx/@vsnthdev) ·
> Discord [Vasanth Developer](https://vas.cx/@discord)