@agebrock/globup

1.0.1 • Public • Published

@agebrock/globup

Overview

GlobUp is a handy tool for Node.js developers who need to work with file globs and directory structures in a hassle-free manner. With GlobUp, you can effortlessly import, parse, and navigate through files and directories in your projects.

Installation

You can install GlobUp via npm:

npm install @agebrock/globup

Usage

GlobUp provides several useful methods to simplify your file and directory operations. Here's how you can use it: (you can find the examples in the test folder)

Importing Modules

import { importUp } from '@agebrock/globup';

const modules = await importUp('fixtures/*.js', {
    cwd: __dirname,
});

console.log(modules.fileA()); // 'fileA'
console.log(modules.fileB()); // 'fileB'
console.log(modules.default()); // 'fileC'
console.log(modules.default2()); // 'fileD'

Finding Files

import { globUp, globUpSync } from '@agebrock/globup';

const filesAsync = await globUp('fixtures/package.json', {
    cwd: __dirname,
    depth: 2,
});
console.log(filesAsync); // ['fixtures/package.json']

const filesSync = globUpSync('fixtures/package.json', {
    cwd: __dirname,
    depth: 2,
});
console.log(filesSync); // ['fixtures/package.json']

Parsing JSON

import { jsonParseUp, jsonParseUpSync } from '@agebrock/globup';

const jsonAsync = await jsonParseUp('fixtures/*.json', {
    cwd: __dirname,
});
console.log(jsonAsync[0].name); // 'fixtures'

const jsonSync = jsonParseUpSync('fixtures/*.json', {
    cwd: __dirname,
});
console.log(jsonSync[0].name); // 'fixtures'

Finding Package.json

import { packageJsonUp, packageJsonUpSync } from '@agebrock/globup';

const pkgJsonAsync = await packageJsonUp({
    cwd: __dirname,
});
console.log(pkgJsonAsync.type); // 'module'

const pkgJsonSync = packageJsonUpSync({
    cwd: __dirname,
});
console.log(pkgJsonSync.type); // 'module'

Contributing

Contributions are welcome! Feel free to submit issues and pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Readme

Keywords

Package Sidebar

Install

npm i @agebrock/globup

Weekly Downloads

0

Version

1.0.1

License

Apache-2.0

Unpacked Size

214 kB

Total Files

22

Last publish

Collaborators

  • chbrock