# node-rename

> rename files/folders to programming case types

Latest version **1.1.5** (published 2023-01-11) · MIT license · 0 weekly downloads

## Install

```sh
npm install node-rename
pnpm add node-rename
yarn add node-rename
bun add node-rename
```

Provides the command `node-rename`.

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.1.5 |
| Published | 2023-01-11 |
| First published | 2022-10-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 6 |
| Unpacked size | 22.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 5 |
| Author | zemil |
| Maintainers | zemil |
| Keywords | npm, nodejs, rename, files, folders |

## Links

- npm: https://www.npmjs.com/package/node-rename
- Repository: https://github.com/iZemil/node-rename
- Homepage: https://github.com/iZemil/node-rename#readme
- Issues: https://github.com/iZemil/node-rename/issues
- npm.io page: https://npm.io/package/node-rename

## Dependencies (6)

- [glob](https://npm.io/package/glob.md) 8.0.3
- [yargs](https://npm.io/package/yargs.md) 17.6.0
- [lodash.camelcase](https://npm.io/package/lodash.camelcase.md) 4.3.0
- [lodash.kebabcase](https://npm.io/package/lodash.kebabcase.md) 4.1.1
- [lodash.snakecase](https://npm.io/package/lodash.snakecase.md) 4.1.1
- [lodash.startcase](https://npm.io/package/lodash.startcase.md) 4.4.0

## Alternatives

- [unionfs](https://npm.io/package/unionfs.md) — 2.2M weekly downloads
- [path-starts-with](https://npm.io/package/path-starts-with.md) — 35.9K weekly downloads
- [redzip](https://npm.io/package/redzip.md) — 1.2K weekly downloads
- [vscode-anymatch](https://npm.io/package/vscode-anymatch.md) — 848 weekly downloads
- [@ledgerhq/coin-filecoin](https://npm.io/package/@ledgerhq/coin-filecoin.md) — 793 weekly downloads

## Recent versions

- 1.1.5 (latest) — 2023-01-11
- 1.1.4 — 2023-01-11
- 1.1.3 — 2023-01-11
- 1.1.2 — 2023-01-11
- 1.1.1 — 2023-01-11
- 1.1.0 — 2022-10-16
- 1.0.7 — 2022-10-02
- 1.0.6 — 2022-10-02
- 1.0.5 — 2022-10-02
- 1.0.4 — 2022-10-02
- 1.0.3 — 2022-10-02
- 1.0.2 — 2022-10-02
- 1.0.1 — 2022-10-02
- 1.0.0 — 2022-10-02
- 0.0.1 — 2022-10-01

## README

# node-rename &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/facebook/react/blob/main/LICENSE) ![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/izemil/node-rename)

Tiny [NodeJS package](https://www.npmjs.com/package/node-rename) for renaming files/folders to `lower`, `upper`, `camel`, `pascal`, `snake`, `kebab`, `train`, `random` case types. Also with cli support.

## Installation

-   Cli usage `npm i node-rename -g`
-   Node package usage `npm i node-rename`

## CLI Examples

Cli help to get full documentation:

```bash
node-rename --help
```

Show files/folders by pattern without renaming them:

```bash
node-rename --pattern "./src/**"
```

Then if you want to rename all files/folders within src directory to kebab case add case option:

```bash
node-rename --pattern "./src/**" --type kebab
```

Add "--log" option to see renaming result without renaming

```bash
node-rename --pattern "./src/**" --type kebab --log
```

### Custom renaming config

1. Init config file `node-rename init`
2. Set up config file
3. Run the config:

```bash
node-rename --pattern "./src/**" --config "./rename.config.js" --log
```

## Node package usage

Case type functions:

```typescript
import { camelCase, kebabCase, lowerCase, pascalCase, randomCase, snakeCase, trainCase, upperCase } from 'node-rename';

upperCase('some sentence!'); // "SOME SENTENCE!"
```

Rename files and folders:

```typescript
import { nodeRename } from 'node-rename';

nodeRename({
    pattern: 'src/**/*.ts',
    type: 'pascal', // type is optional, type: undefined, only returns files to rename
});

// Or cusom rename config
nodeRename({
    pattern: 'src/**/*.ts',
    config: (name: string) => name.replace('-', ''),
});
```

---
_Source: https://npm.io/package/node-rename · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
