---
title: "@maz-ui/node"
description: "Lightweight Node.js utilities - promise-based shell execution, an opinionated consola-backed logger, and a banner printer for CLIs."
package: "@maz-ui/node"
url: "https://maz-ui.com/ecosystem/node/"
---

# @maz-ui/node

> Lightweight Node.js utilities - promise-based shell execution, an opinionated consola-backed logger, and a banner printer for CLIs.

- Package: `@maz-ui/node`
- Web: https://maz-ui.com/ecosystem/node/

`@maz-ui/node` powers the CLIs and build scripts inside the maz-ui ecosystem. It's intentionally tiny: an `exec` wrapper that returns a real `Promise`, a colourful logger built on [consola](https://github.com/unjs/consola), and a banner helper using [figlet](https://github.com/patorjk/figlet.js).

## Installation

```bash [pnpm]
pnpm add @maz-ui/node
```

```bash [npm]
npm install @maz-ui/node
```

```bash [yarn]
yarn add @maz-ui/node
```

## Basic usage

```ts
import { execPromise, logger, printBanner } from '@maz-ui/node'

printBanner({ name: 'my-cli', version: '1.0.0' })

logger.info('Running tests…')
await execPromise('npm test', { packageName: 'tests' })
logger.success('Done')
```

## What's inside

- [`execPromise`](./exec-promise.md) - Promise-based `child_process.exec` with structured logging.
- [`logger` / `createLogger`](./logger.md) - consola-backed logger with semantic log levels and helpers (`box`, `divider`, `brand`, …).
- [`printBanner`](./print-banner.md) - ASCII-art banner printer (figlet) with versioning, dividers and clearing.
- [`setupAgents`](./setup-agents.md) - Configure the AI coding agents of a project for maz-ui (rules and MCP server), as `npx @maz-ui/mcp init` does.

## Requirements

- Node.js 22.23.4+, 24.22.1+ or 26.12.1+ (the releases with the October 2026 security fixes)
- ESM only - published as `"type": "module"`.
