@byaga/require-match

requires files based on a glob pattern

Usage no npm install needed!

<script type="module">
  import byagaRequireMatch from 'https://cdn.skypack.dev/@byaga/require-match';
</script>

README

require-match

This utility was originally written as a tool to dynamically register routes under express.

Install

npm i @byaga/require-match

Example Usage

const express = require('express');
const requireMatch = require("@byaga/require-match");

const app = express();
requireMatch("./**/*.route.js", __dirname).then(files => {
  files.forEach(({name, exports}) => {
    const resourceName = name.split(".")[0].toLowerCase();
    app.use('/' + resourceName, exports)
  });
  app.listen(3000);
}, err => console.error('err', err.message, err));

Params

  • match (string)
  • baseDir (string)[default=process.cwd()] - the directory to begin searching for matching files