Working with Files: Node.js get all files in a folder recursively

Join the AI Workshop to learn more about AI and how it can be applied to web development. Next cohort February 1st, 2026

The AI-first Web Development BOOTCAMP cohort starts February 24th, 2026. 10 weeks of intensive training and hands-on projects.


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)
  }
})

Lessons in this unit:

0: Introduction
1: How to check if a file exists in Node.js
2: How to create an empty file in Node.js
3: How to get the names of all the files in a folder in Node
4: How to get the last updated date of a file using Node.js
5: How to remove a file with Node.js
6: How to write a JSON object to file in Node.js
7: How to empty a folder in Node.js
8: Working with file descriptors in Node
9: Node File Paths
10: Node file stats
11: Working with folders in Node
12: How to use the Node.js fs module with async/await
13: How to get the current folder in Node
14: How to get the file extension in Node.js from the MIME type
15: How to get the file extension in Node.js
16: How to list files in a folder in Node
17: How to mass rename files in Node.js
18: ▶︎ Node.js get all files in a folder recursively
19: Incrementing multiple folders numbers at once using Node.js
20: Save some text to a file in Node.js