Zero Config MongoDB Server for Node.js
MongoDB is fantastic but setup for small projects can be lots of trouble.
This little package does everything necessary to download and start a fresh MongoDB server!
Note: You need to have Node.js and npm already installed!
Note: Make sure there is not already a local mongodb server listening on default port (27017
). If you do, either stop it or use MONGO_PORT
environment variable to change the port.
Let's start a fresh db shall we?
npx mongoz
It will take few seconds on first time of usage to install and extract mongo server.
Do you need a MongoDB server programmatically? No problems!
// CommonJS
const { startMongo } = require('mongoz')
// ESM
import { startMongo } from 'mongoz'
// Install and start listening MongoDB on 127.0.0.1:27017 in background
await startMongo()
// Or with options
await startMongo({ port: 27018 })
When closing server, mongo will also gracefully shutdown with node-graceful-shutdown.
name
: Unique instance name. Default isdefault
(env var:MONGO_NAME
)dir
: Data directory to store logs and data. Default is${os.tmpDir}/mongo
. (env var:MONGO_DIR
)port
: Listening port. Default is27017
(env var:MONGO_PORT
orPORT
)args
Additional arguments passed tomongod
(should be Array)platform
: OS to download binraries for.
You can also use concurrently to start mongo alongside with server:.
Via package.json
:
{
"scripts": {
"start": "concurrently 'npx mongoz' 'node ./server.mjs'"
}
}
Or directly with npx
:
npx concurrently 'npx mongoz' 'node ./server.mjs'
Windows, Linux and Darwin (Mac) are supported. Check formula for details.
By default, we use a temporary directory to store data and logs. You can customize it with MONGO_DIR
environment variable.
MIT.
See MongoDB Licensing for underlying server license.