Skip to content

mrlynn/mongodb-erd

Repository files navigation

MongoDB ERD CLI

npm version License Node Downloads GitHub stars

A command-line tool to generate Entity-Relationship Diagrams (ERD) from MongoDB databases. This tool analyzes your MongoDB collections and generates visual diagrams in various formats (SVG, PNG, PDF, ASCII, or Mermaid syntax).

✨ Features

  • 🔍 Connect to MongoDB databases and analyze collection structures
  • 🔗 Detect relationships between collections
  • 📊 Generate Mermaid ERD diagrams
  • 🎨 Support for multiple output formats (SVG, PNG, PDF)
  • 🎯 Customizable theme and styling
  • 🔄 Collection filtering options
  • 🔄 Environment variable support for sensitive data

🚀 Installation

npm install -g mongodb-erd-cli

💻 Usage

Basic usage:

mongodb-erd --uri "mongodb://localhost:27017" --database "my_database" --output "diagram.svg"

With options:

mongodb-erd \
  --uri "mongodb+srv://..." \
  --database "blog" \
  --output "blog-erd.png" \
  --format png \
  --theme dark \
  --include "posts,users,comments"

Options

Option Description Required Default
--uri MongoDB connection URI Yes* -
--database Database name Yes* -
--output Output file path No Auto-generated
--format Output format (svg, png, pdf, ascii, mermaid) No "svg"
--theme Diagram theme (light, dark) No "light"

*Can be set via environment variables instead (see below). | --include | Comma-separated list of collections to include | No | - | | --exclude | Comma-separated list of collections to exclude | No | - |

Environment Variables

You can use environment variables instead of command line arguments for sensitive data:

# Set environment variables
export MONGODB_URI="mongodb://localhost:27017"
export MONGODB_DATABASE="my_database"

# Run the tool
mongodb-erd

Or create a .env file in your project:

MONGODB_URI=mongodb://localhost:27017
MONGODB_DATABASE=my_database

The tool will check for environment variables before using command line arguments.

🛠️ Development

  1. Clone the repository:
git clone https://github.com/mlynn/mongodb-erd-cli.git
cd mongodb-erd-cli
  1. Install dependencies:
npm install
  1. Run tests:
npm test
  1. Run linting:
npm run lint

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Create Entity Relationship Diagrams from your MongoDB Database

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published