# cd

> chdir in chainer fashion + read file

Latest version **0.3.3** (published 2013-06-05) · 0 weekly downloads

## Install

```sh
npm install cd
pnpm add cd
yarn add cd
bun add cd
```

## Health

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

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; low quality score; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.3.3 |
| Published | 2013-06-05 |
| First published | 2013-05-28 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Node | * |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Ivan Popovski |
| Maintainers | sipware |
| Keywords | cd, chdir |

## Links

- npm: https://www.npmjs.com/package/cd
- Repository: https://github.com/melkior/cd
- Issues: https://github.com/melkior/cd/issues
- npm.io page: https://npm.io/package/cd

## Recent versions

- 0.3.3 (latest) — 2013-06-05
- 0.3.2 — 2013-06-04
- 0.3.1 — 2013-06-01
- 0.3.0 — 2013-05-29
- 0.2.2 — 2013-05-29
- 0.2.0 — 2013-05-28
- 0.1.3 — 2013-05-28
- 0.1.2 — 2013-05-28
- 0.1.1 — 2013-05-28
- 0.1.0 — 2013-05-28
- 0.0.2 — 2013-05-28
- 0.0.1 — 2013-05-28

## README

cd? cd
======

Extra small nodejs module for chdir in chainer fashion + read file.

Install:

    npm install cd

To run tests enter module dir and run:

    node test.js

Rules:

    1. Reading .json will strip comments and convert to JSON.
    2. Reading .js is equivalent of require() that file.
    3. Other files are just read.
    4. Supply file as argument on last call. No chaning afterwards.
    5. Module is synchro. Hmmm, do we really need async version?

Usage:

    var cd = require('cd');

    // You can use any path you like, not only current dir '.'
    var dir = new cd('.');

    // Read ./lol.json
    var lol = dir('lol.json');

    // Read ./test/wtf.js directory.
    var wtf = dir().test('wtf.js');

    // Chain as you like: ./dir1/dir2/fileInDir2
    var file = dir().dir1().dir2(fileInDir2);

    /*
     * Use try/catch for safety (non-existent dirs)
     */
    try {
      content = dir().existDir1().nonexistDir().someDir(someDirFile);
    } catch(e) {
      // ...
    }

If you have cool and pragmatic idea let me know.
This module is not going to grow much, there is no need for yet another bloated module.

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