SQuirreL SQL Client - Web version
This is a web version of the famous web client.
Frontend: Vuetify Material Dashboard https://www.creative-tim.com/product/vuetify-material-dashboard
Backend: Java EE (JAXRS, EJB, CDI).
You need at least Java (>=8), Maven, nodejs. Compile frontend:
cd src/main/javascript
npm install
npm run build
Then package backend and frontend togheter:
cd ../../..
mvn package
The application is intended to run in a real EE container (Glassfish, TomEE, JBoss, ...), not Tomcat.
In Glassfish, with default configuration, the app will run at address http://localhost:8080/squirrel-sql-web/
We are using Glassfish 4.1.2 with MOXy patch described here
Project structure
Vue.js frontend
Drivers CRUD
Driver JAR's selection box
Aliases CRUD
Alias properties window
SQL tab
Objects tree tab
Database tab
Table tab
Table "WHERE" and "ORDERBY" clause panels
Procedure tab
UDT tab
Handling with large tables
Editing table contents
Table import/export
Table DDL, Script SQL
Procedure source code: Mysql, Oracle, PostGreSQL, ...
New session properties window
Global preferences window
SQuirreL logs window
Highlight syntax
Web security: authentication (well, we still need to encrypt passwords)
Web security: authorizations
Users CRUD
i18n
Github CI (continuous integration)
Default username is admin
with password admin
. Users can be configured inside ~/.squirrel-sql/Users.xml
. Passwords are not encrypted, so far.
For frontend development, we can run in mock mode with NodeJS instead of Glassfish:
- Set
VUE_APP_MOCK=true
in file.env
or.env.local
cd src/main/javascript
npm start