Menu

Tree [97aadc] main /
 History

HTTPS access


File Date Author Commit
 .github 2024-11-04 Guy Ben-Aharon Guy Ben-Aharon [27b417] ci: add release workflow (#318)
 .husky 2024-08-25 Guy Ben-Aharon Guy Ben-Aharon [9d6456] husky instructions
 public 2024-12-23 Guy Ben-Aharon Guy Ben-Aharon [91c6fb] add buckle dialog (#498)
 src 2025-04-13 Guy Ben-Aharon Guy Ben-Aharon [ce2389] fix(sidebar): turn sidebar to responsive for mo...
 .dockerignore 2024-08-29 orig orig [48a0f4] feat: improve dockerfile
 .gitignore 2024-10-08 Guy Ben-Aharon Guy Ben-Aharon [689f58] some mobile & bundle optimizations (#262)
 .nvmrc 2024-08-05 Guy Ben-Aharon Guy Ben-Aharon [095e83] initial
 .prettierignore 2024-08-30 origranot origranot [be04ac] fix: ci
 .prettierrc.json 2024-08-05 Guy Ben-Aharon Guy Ben-Aharon [68de99] lint, prettier
 CHANGELOG.md 2025-03-25 Guy Ben-Aharon Guy Ben-Aharon [60fe08] chore(main): release 1.10.0 (#619)
 CODE_OF_CONDUCT.md 2024-08-17 Jonathan Fishner Jonathan Fishner [c9d5de] Add CODE_OF_CONDUCT.md
 CONTRIBUTING.md 2024-11-14 Emmanuel Ferdman Emmanuel Ferdman [44d10c] fix(docs): update license reference (#403)
 Dockerfile 2025-02-13 Guy Ben-Aharon Guy Ben-Aharon [a96c2e] fix(docker): add option to hide popups (#580)
 LICENSE 2024-08-17 Jonathan Fishner Jonathan Fishner [4f73b0] chore: Add LICENSE
 README.md 2025-04-09 Guy Ben-Aharon Guy Ben-Aharon [f15dc7] update twitter (#654)
 components.json 2025-02-23 Guy Ben-Aharon Guy Ben-Aharon [cbc4e8] fix: components config (#591)
 default.conf.template 2025-02-13 Guy Ben-Aharon Guy Ben-Aharon [a96c2e] fix(docker): add option to hide popups (#580)
 entrypoint.sh 2025-02-13 Guy Ben-Aharon Guy Ben-Aharon [a96c2e] fix(docker): add option to hide popups (#580)
 eslint.config.mjs 2024-12-15 Guy Ben-Aharon Guy Ben-Aharon [a151f5] fix(export): fix SQL server field.nullable type...
 index.html 2024-11-26 Guy Ben-Aharon Guy Ben-Aharon [4bb476] fix(docker): make OPENAI_API_KEY optional in do...
 main.js 2025-04-15 e_d_d e_d_d [97aadc] port
 package-lock.json 2025-04-15 e_d_d e_d_d [97aadc] port
 package.json 2025-04-15 e_d_d e_d_d [97aadc] port
 postcss.config.js 2024-08-05 Guy Ben-Aharon Guy Ben-Aharon [68de99] lint, prettier
 tailwind.config.js 2025-03-13 Guy Ben-Aharon Guy Ben-Aharon [63b5ba] fix(sidebar): add sidebar for diagram objects (...
 tsconfig.app.json 2024-08-05 Guy Ben-Aharon Guy Ben-Aharon [1314aa] components
 tsconfig.json 2024-08-05 Guy Ben-Aharon Guy Ben-Aharon [095e83] initial
 tsconfig.node.json 2024-08-05 Guy Ben-Aharon Guy Ben-Aharon [095e83] initial
 vite.config.ts 2025-04-15 e_d_d e_d_d [97aadc] port

Read Me

ChartDB ChartDB

Open-source database diagrams editor
No installations • No Database password required.

CommunityWebsiteExamplesDemo

ChartDB is released under the AGPL license. PRs welcome! Discord community channel


🎉 ChartDB

ChartDB is a powerful, web-based database diagramming editor.
Instantly visualize your database schema with a single "Smart Query." Customize diagrams, export SQL scripts, and access all features—no account required. Experience seamless database design here.

What it does:

  • Instant Schema Import
    Run a single query to instantly retrieve your database schema as JSON. This makes it incredibly fast to visualize your database schema, whether for documentation, team discussions, or simply understanding your data better.

  • AI-Powered Export for Easy Migration
    Our AI-driven export feature allows you to generate the DDL script in the dialect of your choice. Whether you're migrating from MySQL to PostgreSQL or from SQLite to MariaDB, ChartDB simplifies the process by providing the necessary scripts tailored to your target database.

  • Interactive Editing
    Fine-tune your database schema using our intuitive editor. Easily make adjustments or annotations to better visualize complex structures.

Status

ChartDB is currently in Public Beta. Star and watch this repository to get notified of updates.

Supported Databases

  • ✅ PostgreSQL ( + Supabase + Timescale )
  • ✅ MySQL
  • ✅ SQL Server
  • ✅ MariaDB
  • ✅ SQLite ( + Cloudflare D1 Cloudflare D1)
  • ✅ CockroachDB
  • ✅ ClickHouse

Getting Started

Use the cloud version or deploy locally:

How To Use

npm install
npm run dev

Build

npm install
npm run build

Or like this if you want to have AI capabilities:

npm install
VITE_OPENAI_API_KEY=<YOUR_OPEN_AI_KEY> npm run build

Run the Docker Container

docker run -e OPENAI_API_KEY=<YOUR_OPEN_AI_KEY> -p 8080:80 ghcr.io/chartdb/chartdb:latest

Build and Run locally

docker build -t chartdb .
docker run -e OPENAI_API_KEY=<YOUR_OPEN_AI_KEY> -p 8080:80 chartdb

Using Custom Inference Server

# Build
docker build \
  --build-arg VITE_OPENAI_API_ENDPOINT=<YOUR_ENDPOINT> \
  --build-arg VITE_LLM_MODEL_NAME=<YOUR_MODEL_NAME> \
  -t chartdb .

# Run
docker run \
  -e OPENAI_API_ENDPOINT=<YOUR_ENDPOINT> \
  -e LLM_MODEL_NAME=<YOUR_MODEL_NAME> \
  -p 8080:80 chartdb

Note: You must configure either Option 1 (OpenAI API key) OR Option 2 (Custom endpoint and model name) for AI capabilities to work. Do not mix the two options.

Open your browser and navigate to http://localhost:8080.

Example configuration for a local vLLM server:

VITE_OPENAI_API_ENDPOINT=http://localhost:8000/v1
VITE_LLM_MODEL_NAME=Qwen/Qwen2.5-32B-Instruct-AWQ

Try it on our website

  1. Go to ChartDB.io
  2. Click "Go to app"
  3. Choose the database that you are using.
  4. Take the magic query and run it in your database.
  5. Copy and paste the resulting JSON set into ChartDB.
  6. Enjoy Viewing & Editing!

💚 Community & Support

  • Discord (For live discussion with the community and the ChartDB team)
  • GitHub Issues (For any bugs and errors you encounter using ChartDB)
  • Twitter (Get news fast)

Contributing

We welcome community contributions, big or small, and are here to guide you along
the way. Message us in the ChartDB Community Discord.

For more information on how to contribute, please see our
Contributing Guide.

This project is released with a Contributor Code of Conduct.
By participating in this project, you agree to follow its terms.

Thank you for helping us make ChartDB better for everyone ❤️.

License

ChartDB is licensed under the GNU Affero General Public License v3.0

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.