glob-to-routes
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

glob-to-routes

A simple utility that converts a glob file selection to routes that can be used with any routing library.

Installation

npm install glob-to-routes

Usage

import globToRoutes from 'glob-to-routes'

const routes = await globToRoutes(baseDir, globPath, conversionFunction)

This library simply converts the results of a glob (default is **/*.{js,jsx}) into an array of objects containing each file path, and its corresponding route string. As each routing library may vary, the default conversion function uses expressjs like syntax. Here is an example of setting up express routes from page files inside a /pages folder.

const routes = await globToRoutes('./pages')
for (const { route, filePath } of routes) {
  app.get(route, pageHandler(filePath))
}

In this case, pageHandler would be a function that takes in a file path and returns a valid route function based on what the file does.

Custom file path conversion

If you wish to perform custom conversions of paths to route strings, just provide a function that takes in a route path, and returns the relevant transformed string.

Credits

This library was built @wethrift.

Readme

Keywords

Package Sidebar

Install

npm i glob-to-routes

Weekly Downloads

12

Version

1.0.4

License

MIT

Unpacked Size

3.94 kB

Total Files

5

Last publish

Collaborators

  • teamwethrift