dirbuild

0.5.5 • Public • Published

dirbuild

A bit like Make but for directories

The idea

Make works really well with file in, file out processes, but breaks down when you have directory in, directory out processes. This aim to handle that.

The dirbuild config file defines some targets (a lot like with make), where each target has:

  • a command
  • some glob patterns to capture which files affect the outcome of that command
  • the path to the directory that command creates

Then, when running a target with dirbuild [mytarget] (target is optional, defaults to the first target in the config file), that target is found in the config file, the dependencies are resolved and each file is hashed. The output directory is checked for a manifest file, if it exists with the same hashes for each file, then nothing to do. Otherwise, runs the command, then writes the manifest file.

The config file

Named .dirbuild.yml.

targets:
  mytarget:
    command: npm run build
    depends:
      - '*.txt'  # every .txt file in the current directory
      - '**/*.js'  # every .js file in any subdirectory
      - package.json
    dependsExclude:
      - node_modules/**  # ignore everything in node_modules
    output: build/

The manifest file

Generated by dirbuild, and stored in the output directory once the command completes at [outputDirectory]/.dirbuildManifest.yml.

Readme

Keywords

none

Package Sidebar

Install

npm i dirbuild

Weekly Downloads

1

Version

0.5.5

License

MIT

Unpacked Size

54.9 kB

Total Files

28

Last publish

Collaborators

  • plumdog