# schemacrawler/SchemaCrawler

Free database schema discovery and comprehension tool

Repository: https://github.com/schemacrawler/SchemaCrawler
Canonical: https://ross.abutalabs.com/products/schemacrawler
Homepage: http://www.schemacrawler.com/
Language: Java
License: NOASSERTION
License Family: other
Topics: schemacrawler, jdbc, database-diagrams, schema, java, database, database-document, database-documentation, database-schema, documentation, driver, entity-relationship-diagram, er-diagram, metadata-extraction, reverse-engineering, schemaspy, e-r-diagram
Last push: 2026-08-25T02:32:34+00:00

## Health v2 (maintenance only)
Score: 99/100 (v2, computed 2026-09-03T02:39:23.370411+00:00)
- activity 99, release rhythm 99, longevity 100
- inputs: {"age_days": 4064, "days_push": 9, "days_rel": 9, "gap_med": 7, "n_releases_24m": 54}
- flags: no_license, no_readme
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1826, forks 208 (observed 2026-08-28T04:05:41.335195+00:00)

## What it is
SchemaCrawler is a free Java-based database schema discovery and comprehension tool that extracts database metadata via JDBC and outputs it as readable text, HTML5, JSON, YAML, or Graphviz DOT diagrams. It includes grep-style schema searching, schema linting, scripting support, and an AI MCP server.

## Use cases
- document my database schema automatically
- generate entity-relationship diagrams from a database
- diff database schemas between environments
- lint my database schema for design issues
- search for tables and columns by regex
- extract database metadata as JSON or YAML
- explore an unfamiliar database schema

## When to choose
- you need readable, diff-friendly schema documentation across many JDBC-compatible databases
- you want ER diagrams generated from a live database via Graphviz DOT
- you want to automate schema checks in CI pipelines

## When to avoid
- you need a full data modeling or migration tool rather than metadata extraction
- your environment cannot run Java SE 17+
- you need a GUI-first database design experience

## Facets
- artifact type: cli-tool
- maturity: active
- function: database, documentation, reverse-engineering, cli, developer-tools
- domain: databases, developer-tools, documentation
- platform: jvm, cross-platform, cli
- tags: jdbc, schema-discovery, er-diagrams, schema-lint, database-metadata, graphviz, mcp-server

## Member repositories
- schemacrawler/SchemaCrawler (main) score 99

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:41.335195+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:19:34.802830+00:00, confidence not recorded.
  - homepage: http://www.schemacrawler.com/ (fetched 2026-08-29T10:58:29.947943+00:00, sha 3368c3a7729b)
  - site_page: https://www.schemacrawler.com/getting-started.html (fetched 2026-08-29T10:58:29.957580+00:00, sha 07b923e7d1bb)
  - site_page: https://www.schemacrawler.com/index.html (fetched 2026-08-29T10:58:29.959533+00:00, sha 90479b57a3b9)
  - site_page: https://www.schemacrawler.com/faq.html (fetched 2026-08-29T10:58:29.961423+00:00, sha e95f154a594c)
- Data as of 2026-08-30T08:39:29.467469+00:00.
