https://github.com/schemacrawler/schemacrawler-web-application
SchemaCrawler web application for online generation of database diagrams and documentation
https://github.com/schemacrawler/schemacrawler-web-application
database-schema java-8 sqlite
Last synced: 2 days ago
JSON representation
SchemaCrawler web application for online generation of database diagrams and documentation
- Host: GitHub
- URL: https://github.com/schemacrawler/schemacrawler-web-application
- Owner: schemacrawler
- License: epl-2.0
- Created: 2017-01-29T20:21:27.000Z (about 9 years ago)
- Default Branch: main
- Last Pushed: 2026-03-16T21:44:13.000Z (about 1 month ago)
- Last Synced: 2026-03-17T08:24:25.325Z (about 1 month ago)
- Topics: database-schema, java-8, sqlite
- Language: Java
- Homepage:
- Size: 1.82 MB
- Stars: 31
- Watchers: 1
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: .github/README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
**:star: Star it :arrow_heading_up: if you love it!**
[](https://github.com/schemacrawler/SchemaCrawler-Web-Application/actions?query=workflow%3A%22Quick+Build%22)
[](https://github.com/schemacrawler/SchemaCrawler-Web-Application/actions/workflows/integration-tests.yml)
[](https://app.codecov.io/gh/schemacrawler/SchemaCrawler-Web-Application)
#
SchemaCrawler Web Application
> [!NOTE]
> * Please see the [SchemaCrawler website](https://www.schemacrawler.com/) for more details.
> * Use the [SchemaCrawler AI MCP Server](https://github.com/schemacrawler/SchemaCrawler-AI-MCP-Server-Usage) to get deep insights into your database
> * Explore the SchemaCrawler command-line with a [live online tutorial](https://killercoda.com/schemacrawler).
## Technologies
This is a Spring Boot web application with a Bootstrap user interface, with source code control in GitHub, which is automatically built on every commit by GitHub Actions using a Maven build, tests are run, and coverage measured with JaCoCo and Codecov.io, and then immediately deployed to Heroku using a Docker image, which generates an crows-foot ERD of a SQLite database.
## Build and Run
### Build
- Install [Graphviz](https://www.graphviz.org), which is a prerequisite for SchemaCrawler
- Install Docker
- Build application from Maven, run `mvn clean package`
### Build Docker Image
- Follow the steps above
- Install Docker
- Build application and Docker image from Maven, run `mvn -Ddocker.skip=false clean package`
### Start the Server
- Set the following environmental variables locally
- AWS_ACCESS_KEY_ID
- AWS_SECRET_ACCESS_KEY
- AWS_S3_BUCKET
- Do one of the steps below to start the web application locally on your system
- Start the application from Maven, run
`mvn -Dspring-boot.run.fork=false spring-boot:run`
- Start application from the jar file, run
`java -jar target/schemacrawler-webapp-17.10.2-1.jar`
- Start the application from the local image in a Docker container, run
`docker run -d --rm --env AWS_ACCESS_KEY_ID=xxxxx --env AWS_SECRET_ACCESS_KEY=xxxxx --env AWS_S3_BUCKET=xxxxx -p 8080:8080 -t schemacrawler/schemacrawler-webapp`
### Use the Application
Then, after you ensure that the web server is running, either from the command-line,
or the Docker container, open a browser to
[https://localhost:8080](https://localhost:8080)