{"id":18895009,"url":"https://github.com/dolthub/dolt-workbench","last_synced_at":"2026-02-13T00:11:14.314Z","repository":{"id":208687351,"uuid":"698007683","full_name":"dolthub/dolt-workbench","owner":"dolthub","description":"A modern, browser-based, open source SQL workbench for your MySQL and PostgreSQL compatible database with version control features when connected to Dolt.","archived":false,"fork":false,"pushed_at":"2024-10-29T21:36:02.000Z","size":22119,"stargazers_count":118,"open_issues_count":4,"forks_count":5,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-10-29T22:45:25.812Z","etag":null,"topics":["database-version-control","dolt","git","git-sql","mysql","postgresql","sql","workbench"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/dolthub/dolt-workbench","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dolthub.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"dolthub"}},"created_at":"2023-09-29T00:03:44.000Z","updated_at":"2024-10-29T21:36:07.000Z","dependencies_parsed_at":"2024-01-23T00:34:14.182Z","dependency_job_id":"c2407cc4-cd2b-459e-ba29-23f2a0a751e3","html_url":"https://github.com/dolthub/dolt-workbench","commit_stats":null,"previous_names":["dolthub/dolt-workbench"],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dolthub%2Fdolt-workbench","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dolthub%2Fdolt-workbench/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dolthub%2Fdolt-workbench/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dolthub%2Fdolt-workbench/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dolthub","download_url":"https://codeload.github.com/dolthub/dolt-workbench/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247378142,"owners_count":20929296,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database-version-control","dolt","git","git-sql","mysql","postgresql","sql","workbench"],"created_at":"2024-11-08T08:26:01.303Z","updated_at":"2026-02-06T02:05:15.272Z","avatar_url":"https://github.com/dolthub.png","language":"TypeScript","readme":"# dolt-workbench\n\nA modern, browser-based, open source SQL workbench for your MySQL and PostgreSQL\ncompatible databases. Use [Dolt](https://doltdb.com) or\n[Doltgres](https://github.com/dolthub/doltgresql) to unlock powerful version control\nfeatures.\n\n## Installation\n\nThere are a few ways to install the Dolt Workbench:\n\n- Download the desktop application for [macOS](https://apps.apple.com/us/app/dolt-workbench/id6720702995?mt=12) or [Windows](https://apps.microsoft.com/detail/9nq8lqph9vvh?hl=en-us\u0026gl=US)\n- Download the desktop application for macOS or Windows from [Releases](https://github.com/dolthub/dolt-workbench/releases)\n- [Pull the Docker Hub image](https://hub.docker.com/r/dolthub/dolt-workbench)\n- [Build from source](https://github.com/dolthub/dolt-workbench?tab=readme-ov-file#getting-started-from-source)\n\n## Features\n\nWhether you decide to connect this workbench to a MySQL, Dolt, or PostgreSQL database, the\nDolt Workbench has many features that make it the most modern and user-friendly web-based\nworkbench on the market.\n\n### Modern, web-based table browser\n\nWhy is your SQL workbench stuck in 2003? The Dolt Workbench brings a modern browser-based UI to the\nworkbench features you know and love. It makes browsing table data and schemas more\nintuitive and looks good doing it.\n\n\u003cimg width=\"1357\" alt=\"Modern, web based table-browser\" src=\"https://www.dolthub.com/blog/static/3f1358cd506d7b8ed383ea0751b67446/4f2ef/table-browser.png\"\u003e\n\n### Auto-generate SQL queries\n\nDon't know SQL? Utilize table cell buttons and query helpers to generate and execute SQL\nqueries for you, while learning SQL along the way. Or execute your own SQL queries from\nthe console with the help of syntax highlighting.\n\n![SQL queries](./images/sql-queries.png)\n\n### Edit data using point and click interface\n\nCell buttons can also be used to edit data. Double click into any cell to edit its value\nand easily remove or add rows, columns, and tables using helper buttons.\n\n![Edit data](./images/edit-data.png)\n\n### ER diagrams\n\nER diagrams are a great tool to visualize the entities in your database and the\nrelationship between tables. They help to analyze the structure of the database.\n\n![ER diagrams](./images/er-diagram.png)\n\n### File upload\n\nUpload files from your computer or use the spreadsheet editor to add or modify rows in\nyour table directly from the web interface.\n\n![File upload](./images/file-importer.png)\n\n## Version control features with [Dolt](https://doltdb.com)\n\n[Dolt](https://doltdb.com) is a SQL database you can fork, clone, branch, merge, push and\npull just like a Git repository. When connecting the workbench to a Dolt database, you\ngain access to these powerful version control features.\n\n### Commit log visualizations\n\nEasily visualize your commits and understand your commit history from the commit graph. It\ndisplays information about branches, commits, and collaborators in a single view. You'll\nbe able to easily identify contributions, track down specific commits, and gain valuable\ninsights into your development process.\n\n![Commit graph](./images/commit-graph.png)\n\n### Branch navigation\n\nA branch adds non-distributed, write isolation to your database. If you have a set of\ndatabase changes that logically should be grouped or reviewed together, you make\nthose changes on a branch.\n\n![Branch navigation](./images/branches.png)\n\n### Tags\n\nTag your data at a commit to represent a data release. Data releases are a collection of\ndata with a specific schema and known set of data points. They are often used to represent\ndata you may want to recreate at a later date, like to reproduce a machine learning model.\n\n![Tags](./images/tags.png)\n\n### Pull requests\n\nPull requests are a way to propose changes to a database. A pull request is created from a\nbranch with new changes that a user would like to make to another branch (commonly the\n`main` branch). Easily review the diff of proposed changes and think through potential\nimprovements or implications of the change. The pull request can then be merged, which\nwill update the base branch with the changes from the feature branch.\n\n![Pull requests](./images/pull-diff.png)\n\n## Getting started\n\nThe easiest way to get started is with Docker. Assuming you have Docker\n[installed](https://www.docker.com/get-started/) and running, you can simply pull and run\nthe [Docker image](https://hub.docker.com/r/dolthub/dolt-workbench).\n\n```\n% docker pull dolthub/dolt-workbench:latest\n% docker run -p 9002:9002 -p 3000:3000 dolthub/dolt-workbench:latest\n```\n\nNavigate to http://localhost:3000 to enter your database information. See instructions on\n[Docker Hub](https://hub.docker.com/r/dolthub/dolt-workbench) for connecting to local and\nDocker installed databases.\n\n### Saving connection information between runs\n\n#### Using the file store\n\nIf you want to save connection metadata between Docker runs, you can mount a local\ndirectory to the `store` directory in `/app/graphql-server` in the container.\n\n```bash\n% docker run -p 9002:9002 -p 3000:3000 -v ~/path/to/store:/app/graphql-server/store dolthub/dolt-workbench:latest\n```\n\n#### Using a MySQL database\n\nYou can also persist connection metadata in a MySQL-compatible database by providing\ndatabase connection information through environment variables.\n\nUsing a `.env` file:\n\n```bash\n# Specify individual fields:\nDW_DB_DBNAME=dolt_workbench\nDW_DB_PORT=3306\nDW_DB_USER=\u003cusername\u003e\nDW_DB_PASS=\u003cpassword\u003e\nDW_DB_HOST=host.docker.internal\n\n# Or use a connection URI:\nDW_DB_CONNECTION_URI=mysql://\u003cusername\u003e:\u003cpassword\u003e@host.docker.internal:3306/dolt_workbench\n\n# For databases that require secure connections\nDW_DB_USE_SSL=true\n```\n\n```bash\n% docker run -p 9002:9002 -p 3000:3000 --env-file \u003cenv_file_name\u003e dolthub/dolt-workbench:latest\n```\n\nOr use the `-e` flag:\n\n```bash\n% docker run -p 9002:9002 -p 3000:3000 -e DW_DB_CONNECTION_URI=\"mysql://\u003cusername\u003e:\u003cpassword\u003e@host.docker.internal:3306/dolt_workbench\" dolthub/dolt-workbench:latest\n```\n\nNote that we do not create the database `dolt_workbench` for you. You must create it\nyourself:\n\n```sql\nCREATE DATABASE dolt_workbench;\n```\n\n## Getting started from source\n\nFirst, clone this repository.\n\n### Run the GraphQL server\n\nStart the GraphQL server. If successful, you'll see the GraphQL playground when you navigate to `localhost:9002/graphql`.\n\n```\n% cd graphql-server\ngraphql-server % yarn \u0026\u0026 yarn compile\ngraphql-server % yarn dev\n```\n\n### Run the web server\n\nIn another shell, start the web server. This will automatically point at the running\nGraphQL server (localhost:9002).\n\n```\n% cd packages/web\nweb % yarn \u0026\u0026 yarn compile\nweb % yarn dev\n```\n\nOpen your browser to [localhost:3002](http://localhost:3002).\n","funding_links":["https://github.com/sponsors/dolthub"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdolthub%2Fdolt-workbench","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdolthub%2Fdolt-workbench","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdolthub%2Fdolt-workbench/lists"}