GridFile is a reusable Mongoose schema for MongoDB GridFS

Usage no npm install needed!

<script type="module">
  import gridfile from '';


npm NPM npm Coverage Status Sponsor

GridFile - Mongoose Schema for MongoDB GridFS

GridFile is a reusable Mongoose schema for MongoDB GridFS. No separate database setup is needed as it uses the Mongoose connection for interacting with GridFS.


npm install gridfile


  • Import the schema
const schema = require('gridfile')
  • Create a Mongoose model from the schema
const GridFile = mongoose.model('GridFile', schema)
  • Upload a file
const fileStream = fs.createReadStream('/path/to/file.ext')

const gridFile = new GridFile()
gridFile.filename = 'file.ext'
await gridFile.upload(fileStream)
  • Download a file
const fileStream = fs.createWriteStream('/path/to/file.ext')
const gridFile = GridFile.findById('id')




Documentation is available at

Fixes & Improvements

Head over to the issues tab at to report a bug or suggest an improvement. Feel free to contribute to the code or documentation by creating a pull request.

Sponsor / Support

If you find the project interesting or helpful, please consider sponsoring or supporting it at