GitHub - webofmarius/SQLJoiner: Sql Joiner - Graphical SQL builder and debugger · GitHub
/" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
webofmarius
SQLJoiner
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>217 Commits<br>217 Commits
app
app
build
build
docker
docker
docs
docs
electron
electron
scripts
scripts
.gitignore
.gitignore
.htaccess
.htaccess
DIRECTORIES.md
DIRECTORIES.md
LICENSE
LICENSE
README.md
README.md
package.json
package.json
View all files
Repository files navigation
SQL Joiner
A visual SQL query builder for MySQL.
Build SELECT queries by dragging tables onto a canvas, connecting them with joins, and setting conditions — all without writing SQL by hand.
Features
Visual canvas — drag tables from the sidebar onto the canvas, then draw join lines between columns
Join types — INNER, LEFT, RIGHT, FULL OUTER, CROSS
SELECT builder — pick columns visually or switch to raw SQL mode; supports column aliases, DISTINCT, custom expressions, and alpha sort
WHERE / GROUP BY / HAVING / ORDER BY — visual or raw SQL mode for each clause
Subqueries — add a subquery as a named table on the canvas
Import SQL — paste an existing query to reverse-engineer it onto the canvas
Contexts — save and restore canvas states (tables, joins, conditions)
Notes — attach freeform notes to a context
Connection profiles — store multiple MySQL connection profiles; switch between them from the top bar
Query cancellation — cancel a running query mid-execution
Results grid — paginated results with copy-to-clipboard support
Canvas search — find tables, aliases, joins, or island labels
Tech stack
Layer<br>Technology
Desktop shell<br>Electron (optional )
Backend<br>PHP (built-in CLI server)
Frontend<br>Vanilla JS + Canvas API
Requirements
PHP 8+ — required (the only hard dependency)
Node.js + Electron — optional, only needed if you want the desktop app wrapper or to build installers
Packaged app: PHP binary is bundled (Windows & Mac builds include it under php-bin/)
Getting started
Without Electron (PHP only)
The simplest way to run the app — just PHP:
cd app<br>php -S localhost:8080
Then open http://localhost:8080 in your browser.
With Electron (desktop app)
npm install<br>npm start
Building installers
Requires Node.js.
npm run build:mac # macOS DMG<br>npm run build:win # Windows installer (NSIS)<br>npm run build:linux # Linux AppImage
Output goes to dist/.
Project structure
app/<br>src/<br>Core/ Request, Response, ContextManager, AboutManager<br>Database/ Connection (PDO), ProfileManager, SchemaInspector<br>Query/ QueryBuilder, QueryParser, JoinClause, WhereClause,<br>GroupByClause, HavingClause, OrderByClause<br>assets/<br>js/ Canvas, joins, islands, autocomplete, undo/redo, results, profiles, api<br>storage/ Connection profiles and saved contexts (JSON)<br>electron/<br>main.js Electron entry — starts the PHP server, opens the window<br>php-bin/ Bundled PHP binaries (win/, mac/, linux/)
Connection profiles
Profiles are stored in app/storage/profiles.json. Each profile holds host, port, database, user, and password. Manage them via Profiles in the top bar.
About
Sql Joiner - Graphical SQL builder and debugger
Resources
Readme
License
GPL-3.0 license
Uh oh!
There was an error while loading. Please reload this page.
Activity
Stars
star
Watchers
watching
Forks
forks
Report repository
Releases
SQL Joiner 1.13.10 - Desktop version (with Electron)
Latest
Apr 8, 2026
Packages
Uh oh!
There was an error while loading. Please reload this page.
Contributors
Uh oh!
There was an error while loading. Please reload this page.
Languages
JavaScript<br>76.1%
CSS<br>12.3%
PHP<br>11.3%
Other<br>0.3%
You can’t perform that action at this time.