Node.js get all files in a folder recursively

How do you list all the files in a folder in Node.js?

I had the need to get all the files in a folder recursively.

The best way I found to do that was to install the glob library:

npm install glob

I wanted to look for all index.md files included in the content/post folder, each file being in its own directory structure, possibly under multiple subfolders:

  • content/post/first/index.md
  • content/post/second/index.md
  • content/post/another/test/index.md

Here’s how I did it:

const glob = require('glob')

const root_folder = 'content/post'

glob(root_folder + '/**/index.md', (err, files) => {
  if (err) {
    console.log('Error', err)
  } else {
    console.log(files)
  }
})

Download my free Node.js Handbook!