node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



Build Status Coverage Status Community

simple, self-hosted publishing platform.

Quick Start

After running npm install, simply type npm start. If it's your first time, melody will automatically create an admin user and generate a random password.

Extra config values, such as character limit and allowing public registrations, are available in config/index.js for your convenience.


melody has a fully functional REST API, including an events API that is provided over WebSockets. To see documentation, visit your melody instance's API URL:


This API is automatically provided by Maki, the web framework used to build melody.


We strongly recommend using pm2 to manage melody in production. You can use the included melody.js to keep your instance named clearly. To run melody using pm2, simply:

pm2 start melody.js

Which will produce the following output:

│ App name │ id │ mode │ pid   │ status │ restart │ uptime │ memory      │ watching │
│ melody   │ 0  │ fork │ 25957 │ online │ 0       │ 0s     │ 10.906 MB   │ disabled │

See pm2 help for other instructions, such as startup scripts and monitoring.

Using as a Library

melody was built with Maki, so it can also be used as a library:

var melody = require('melody');