dbSpy  by open-source-labs

Open-source data modeling tool for relational database development

created 3 years ago
280 stars

Top 93.9% on sourcepulse

GitHubView on GitHub
Project Summary

dbSpy is an open-source data modeling tool designed for relational database development, offering visualization, modification, and building capabilities. It targets developers and users who need to interact with and design database schemas, providing a visual interface to streamline these processes.

How It Works

dbSpy utilizes a React frontend with a Zustand state management solution for its UI. It supports connecting to existing databases (PostgreSQL, MySQL, Microsoft SQL, Oracle SQL) or uploading SQL files to generate Entity Relationship Diagrams (ERDs). Users can also build databases from scratch on a visual canvas. The tool allows for schema and data modification directly through the UI, generating SQL queries to reflect changes in the database. It also features a query generator and a new query page for running SQL against PostgreSQL or MySQL.

Quick Start & Requirements

  • Install: npm install, npm run seed (to populate MySQL), npm run dev (to run).
  • Prerequisites: Node.js, npm, MySQL database for backend functions. SSL certificates are required for connecting to SQL databases (scripts provided for macOS and Linux).
  • Setup: Requires environment variables configuration (.env file) for database connections and OAuth.
  • Docs: How to Use

Highlighted Details

  • Supports connecting to remote databases (PostgreSQL, MySQL, Microsoft SQL, Oracle SQL) and uploading SQL files.
  • Visual ER diagram generation with dynamic table and column editing.
  • Live SQL querying interface with saved query history and performance tracking.
  • OAuth support for GitHub and local login.
  • Undo/Redo functionality for edits.

Maintenance & Community

The project lists numerous contributors and is part of the OSLabs Beta program. PRs are welcome.

Licensing & Compatibility

MIT License. Compatible with commercial use and closed-source linking.

Limitations & Caveats

Oracle SQL connections require a separate OCI download. The project requires a local MySQL database for backend operations and specific environment variable configurations for development.

Health Check
Last commit

3 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
2 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.