Commit Graph
321 Commits
Author SHA1 Message Date
t8y2 0f40488bf1 feat(web): add password setup page, change password, and settings tabs
- First-time visitors see a password setup page instead of open access
- Password persisted to SQLite (env var DBX_PASSWORD takes priority)
- Add change password in settings dialog (Security tab, web only)
- Split settings dialog into Editor and Security tabs
- Argon2 hashing for all password storage
2026-05-05 22:22:04 +08:00
t8y2 8cc4dfb268 fix: update workspace paths and optimize Rust caching in CI workflows 2026-05-05 21:45:17 +08:00
t8y2 15498b70fd chore: add src-web to pre-commit cargo fmt hook 2026-05-05 21:14:24 +08:00
t8y2 d66ac93622 security(web): replace SHA-256 with Argon2 for password hashing
SHA-256 without salt is vulnerable to rainbow table attacks.
Argon2 provides salted slow hashing resistant to brute force.
2026-05-05 21:13:07 +08:00
t8y2 2ac29879e4 feat(docker): use cargo-zigbuild for native cross-compilation
- Switch sqlx, reqwest, tiberius from native-tls to rustls to eliminate
  OpenSSL dependency, enabling clean cross-compilation
- Use cargo-zigbuild to cross-compile dbx-web for both amd64 and arm64
  natively without QEMU emulation for Rust compilation
- Frontend and backend stages use --platform=$BUILDPLATFORM to avoid
  emulation during build
- Remove libssl3 from runtime image (no longer needed with rustls)
2026-05-05 21:05:44 +08:00
t8y2 e0cd2e88a6 fix(docker): add libssl3 and ca-certificates to runtime image 2026-05-05 20:16:26 +08:00
t8y2 05c50e942f ci(docker): add multi-platform build for linux/amd64 and linux/arm64 2026-05-05 18:39:43 +08:00
t8y2 1a586ffbeb ci(docker): add build caches for Rust and pnpm
- Cache Cargo registry and target dir to speed up incremental Rust builds
- Cache pnpm store for faster dependency installs
2026-05-05 18:28:20 +08:00
t8y2 91252acd59 ci: optimize release workflow pipeline
- Run docker build in parallel with platform builds instead of sequentially
- Publish release as pre-release instead of full release for manual verification
- Integrate brew/scoop package publishing into release workflow
- Keep publish-packages.yml with workflow_dispatch only for manual re-runs
2026-05-05 18:22:12 +08:00
t8y2 9a5ef5a5bc feat(queryStore): filter saved tabs based on runtime environment 2026-05-05 17:43:38 +08:00
skyler 6918903cad Merge pull request #95 from wu-clan/optimize-conn-error
feat: optimize connection error alerts
2026-05-05 17:35:03 +08:00
t8y2 025b676b0b feat(AppTabBar): improve tab scrolling behavior and enhance tab styling 2026-05-05 17:34:18 +08:00
skyler 5905db1a87 Merge pull request #94 from Mukesh-234234/main
Formatted
2026-05-05 17:30:42 +08:00
Agent-43 0c2af6ee93 Done 2026-05-05 14:45:31 +05:30
Wu Clan 5242cbb3c6 fix: lint 2026-05-05 17:10:07 +08:00
Wu Clan cc70e4b59c feat: optimize connection error alerts 2026-05-05 17:07:58 +08:00
Agent-43 df9fac4fcb Updated .husky file 2026-05-05 14:25:38 +05:30
t8y2 9fde971f6e feat(Dockerfile): add public directory copy for frontend build 2026-05-05 16:55:29 +08:00
t8y2 7a71c4866d feat(ContentArea): enhance tab display with improved styling for table name and database info 2026-05-05 16:55:14 +08:00
t8y2 4cef22904b feat(chart): add chart functionality with ECharts integration and update output view options 2026-05-05 16:53:26 +08:00
Agent-43 80e1cf927e Formatted 2026-05-05 13:58:14 +05:30
t8y2 0ee433763a chore: bump version to 0.4.1 2026-05-05 16:13:53 +08:00
skyler 2fd76886d2 Merge pull request #91 from Mukesh-234234/main
issue-88 fix
2026-05-05 16:04:27 +08:00
t8y2 24537093ad feat(update): add API endpoint to retrieve app version and update client-side calls 2026-05-05 16:01:38 +08:00
Mukesh-234234 f6857a52bd Merge branch 't8y2:main' into main 2026-05-05 13:24:37 +05:30
t8y2 3acd9280ac chore: add oxfmt + husky + lint-staged for code formatting and CI format checks 2026-05-05 15:41:34 +08:00
t8y2 c295bf5780 feat(sql): add save/open SQL file buttons and enable tab persistence on desktop 2026-05-05 15:18:54 +08:00
Agent-43 b6709a0280 Updated 2026-05-05 12:40:32 +05:30
Agent-43 419a3cf069 issue-88 fix 2026-05-05 12:12:50 +05:30
t8y2 2de0894a99 feat(update): refactor release fetching to use structured JSON response 2026-05-05 14:40:05 +08:00
t8y2 41445ff474 chore: add rustfmt.toml and apply unified code formatting 2026-05-05 14:16:18 +08:00
t8y2 edcdd652ae fix(connection): reduce failed connection timeout
Closes #86
2026-05-05 14:13:07 +08:00
t8y2 1d6621e471 feat: update dependencies and integrate tracing for improved logging and performance 2026-05-05 13:29:02 +08:00
t8y2 10d1d31053 Refactor code structure for improved readability and maintainability 2026-05-05 13:21:04 +08:00
t8y2 4c26de0534 feat: update favicon image for improved branding 2026-05-05 12:17:10 +08:00
t8y2 f0941c083e feat: update tab execution logic to handle multiple tabs with SQL queries 2026-05-05 12:07:02 +08:00
t8y2 6beae4e139 feat: add Docker update instructions for non-desktop users in UpdateDialog 2026-05-05 12:01:56 +08:00
t8y2 45785fd11e feat: enhance connection and query store logic for improved tab management and persistence 2026-05-05 11:11:08 +08:00
t8y2 684877f563 feat: enhance auth check logic to handle password hash absence 2026-05-05 10:41:20 +08:00
t8y2 e76b836eb4 feat: refactor database loading logic and update database options handling 2026-05-05 05:13:55 +08:00
t8y2 371a763b9e feat: add Docker workflow for building and pushing images 2026-05-05 05:09:01 +08:00
t8y2 f9a9945f1f feat: migrate storage from JSON files to SQLite
Replace all JSON file storage (connections, secrets, history, AI config,
conversations, sidebar layout) with a single SQLite database (dbx.db).
Auto-migrates existing JSON data on first launch, renaming old files to
.bak. Remove keyring dependency — passwords now stored in SQLite.
2026-05-05 04:48:45 +08:00
t8y2 af36373953 feat: implement web backend for API interactions and connection management 2026-05-05 04:24:10 +08:00
t8y2 c8c13eacac feat: add AI assistant SQL handling functions for query tab management 2026-05-05 04:18:51 +08:00
t8y2 bdd8b3fa03 refactor: split App.vue into composables and layout components
Extract 11 composables and 5 layout components from App.vue, reducing it
from 1921 to 327 lines. Unify dialog overlay style across DialogContent
and DialogScrollContent for consistent backdrop appearance.
2026-05-05 04:14:00 +08:00
t8y2 794c5375c7 feat: add execute-script route and handler for executing SQL scripts 2026-05-05 03:22:26 +08:00
t8y2 41bceffc0e feat: add web deployment with axum server, Docker support, and browser UI
Introduce src-web (axum HTTP server) exposing all 43 database operations
as REST APIs with SSE streaming for AI, transfers, and SQL file execution.
Frontend adapts automatically between Tauri and HTTP backends via api.ts.
Includes password authentication, Docker packaging, and login page.
2026-05-05 03:16:50 +08:00
t8y2 cf4f25fd52 feat: extract dbx-core crate for web deployment support
Refactor all database drivers, query execution, schema operations, and
business logic into a shared `dbx-core` crate. The Tauri desktop app
becomes a thin shell delegating to dbx-core, enabling future web and
CLI frontends to reuse the same core.
2026-05-05 03:16:24 +08:00
t8y2 7bee4bca55 fix: adjust layout and improve connection selection UI for better usability 2026-05-05 00:22:14 +08:00
t8y2 50f55bd6dc feat: enhance connection selection UI with database icons 2026-05-04 23:51:33 +08:00