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 mongozIt 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_PORTorPORT)argsAdditional 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.