schemaspy

SchemaSpy code home

Github stars Tracking Chart

Schema Spy - schemaspy.org

Build Status
Documentation Status
Quality Gate
Coverage
Gitter
Docker Pulls

Please support a project by simply putting a Github star.
Share this library with friends on Twitter and everywhere else you can.

If you notice bug or have something not working please report an issue, we'll try to fix it as soon as possible.
More documentation and features expected to be soon. Feel free to contribute.

This is a new code repository for SchemaSpy tool initially created and maintained by John Currier.
I personally believe that work on SchemaSpy should be continued, and a lot of still existing issues should be resolved.
Last released version of the SchemaSpy was in 2010, and I have a plan to change this.

I would like to say thank you to John Currier for the invention of this database entity-relationship (ER) diagram generator.

My plan is to release new SchemaSpy version and concentrate on refactoring and improving it.

In new SchemaSpy 6.0 version you will find:

  1. Absolutely new amazing look and feel generated content

  2. You can very easily change SchemaSpy theme because all of the logic was moved outside the Java code

  3. Speed of database generation improved a little

  4. Generation of the html pages was changed from plain concatenated text in Java code to Moustache engine

  5. In database comments you can use Markdown language what should improve user experience from reading your database documentation

  6. You can also easily create in database comments links to the tables and columns

More detail will came in next days plus I have plan to start working on all not resolved issues.

Documentation

If you need more info about how to use or install SchemaSpy please read the last documentation at Read the Docs.

Documentation

Sample Output

alt tag

SchemaSpy v6.1.0

Release Notes

Download

Latest Build

To verify fixes and new features you can download our latest build.

schemaspy@latest

Docker

We publish snapshot and release to hub.docker.io

FAQ

General

Schema or Catalog name can't be null

This means that Schema or Catalog information could not be extracted from connection.
I this case you need to add options -s [schemaName] or -cat [catalogName]
In most cases for catalog you can use -cat %
In mysql you can use same as -db

OSX

Graphviz

There have been lots of issue with graphviz and OSX
So install using brew brew install graphviz --with-librsvg --with-pango
If you already have graphviz installed you need to uninstall and then install

brew uninstall graphviz
brew install graphviz --with-pango --with-librsvg

Depending on OSX version
Older than High Sierra, add -renderer :quartz to the commandline
High Sierra or newer, add -renderer :cairo to the commandline

Bugs and Issues

Have a bug or an issue with SchemaSpy? Open a new issue here on GitHub.

Contribution

Are very welcome! And remember, contribution is not only PRs and code, but any help with docs or helping other developers to solve issues are very appreciated! Thanks in advance!

Build Instructions

Application

SchemaSpy is built using maven and we utilize the maven wrapper.
Windows mvnw.cmd package
Linux ./mvnw package
The resulting application can be found in target

Analyzing

You need your own SonarQube:
https://hub.docker.com/_/sonarqube/
Windows mvnw.cmd -P sonar clean verify -Dsonar.host.url=http://$(boot2docker ip):9000 -Dsonar.jdbc.url="jdbc:h2:tcp://$(boot2docker ip)/sonar"
Linux ./mvnw -P sonar clean verify

Watch results at:
Linux http://localhost:9000
Windows http://$(boot2docker ip):9000

Documentation

You'll need sphinx installed http://www.sphinx-doc.org
Navigate into docs
Windows make.bat html
Linux make html
The resulting documentation can be found in docs/build/html

Maintained

SchemaSpy is maintained by:

with SchemaSpy community support please contact with us if you have some question or proposition.

Team Tools

alt tag

SchemaSpy Team would like inform that JetBrains is helping by provided IDE to develop the application. Thanks to its support program for an Open Source projects !

alt tag

SchemaSpy project is using SonarCloud for code quality.
Thanks to SonarQube Team for free analysis solution for open source projects.

License

SchemaSpy is distributed under LGPL version 3 or later, see COPYING.LESSER(LGPL) and COPYING(GPL).
LGPLv3 is additional permissions on top of GPLv3.

image

Main metrics

Overview
Name With Ownerschemaspy/schemaspy
Primary LanguageHTML
Program languageHTML (Language Count: 8)
Platform
License:GNU Lesser General Public License v3.0
所有者活动
Created At2016-07-25 05:30:58
Pushed At2025-03-15 20:11:09
Last Commit At2025-03-15 20:11:09
Release Count13
Last Release Namev7.0.2 (Posted on 2025-03-15 20:11:08)
First Release Namev6.0.0-beta.1 (Posted on )
用户参与
Stargazers Count3.4k
Watchers Count50
Fork Count329
Commits Count1.9k
Has Issues Enabled
Issues Count620
Issue Open Count266
Pull Requests Count833
Pull Requests Open Count23
Pull Requests Close Count54
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private