Releases: titanbaserun/titanbase
Releases · titanbaserun/titanbase
Release list
0.7.0
Added
- Added a shared 20 MB browser import limit for Titan JSON, PostgreSQL SQL, and compare files.
- Added confirmation dialogs for destructive table, relation, index, and enum deletion, including cascade impact details.
- Added reusable dialog focus management and keyboard focus trapping for editor modals.
- Added precomputed schema visual indexes for foreign-key and index badges.
- Added a PostgreSQL-first dialect capability notice in the Project Overview and export warnings for non-PostgreSQL workflows.
- Added CSP and stricter renderer navigation rules to Titanbase Desktop.
- Added dependency-audit checks to core CI.
Changed
- Reduced canvas hot-path work by tracking dirty state through immutable schema identity and serializing only during save/autosave.
- Aligned the browser editor React and React type ranges with the installed React 19.2 release.
0.6.0
Added
Export Presets
- Added local PostgreSQL export presets for Supabase and Neon.
- Added Supabase and Neon tabs to the export modal with clear local-first warnings.
- Added preset-specific SQL headers and
.supabase.sql/.neon.sqldefault filenames.
Editor
- Added a file-changed-on-disk prompt for desktop-opened
.titan.jsonfiles. - Added support for reloading an externally changed file or continuing with the in-editor version.
- Added shared editor hooks for browser autosave, desktop document bridging, schema export generation, and asset path handling.
- Added desktop-safe relative asset paths so packaged Electron builds load logos and static assets from the bundled renderer.
Examples
- Added onboarding PostgreSQL sample files in
examples/sqlfor Blog, SaaS, Supabase-style PostgreSQL, and Neon/PostgreSQL workflows. - Added importer coverage that verifies the onboarding SQL samples import successfully and produce no error-level diagnostics.
Changed
- Improved Recent Schemas UI with timestamps and clearer desktop-local copy.
- Updated README and desktop documentation to reflect the current local-first desktop and SQL import/export workflow.
Fixed
- Fixed packaged desktop builds loading web-style absolute asset paths instead of local bundled assets.
- Fixed desktop file-change detection surfacing only as status text by adding a proper reload/keep-editing prompt.
titanbase-desktop@0.2.0
titanbase-desktop@0.2.0 - Desktop Polish
Added
- Added file-change reload prompts for opened
.titan.jsonfiles. - Added improved Recent Schemas presentation with last-opened timestamps.
- Added Supabase and Neon export preset support to desktop native file export.
Changed
- Improved packaged renderer asset loading for offline desktop builds.
- Kept desktop builds unsigned until Developer ID signing and notarization are available.
titanbase-desktop@0.1.0
titanbase-desktop@0.1.0 - Desktop App
- Released the Electron desktop package as
titanbase-desktop@0.1.0.
Desktop App
- Added the free OSS
apps/desktopElectron application using the shared visual editor and schema packages. - Added file-backed open, save, Save As, SQL import, compare, migration-draft export, and all schema export workflows through native dialogs.
- Added a narrow typed preload bridge with context isolation, renderer sandboxing, and Node integration disabled.
- Added native application menus and shortcuts, recent files, OS file-open events, drag and drop, unsaved-change prompts, and safe close handling.
- Added deterministic desktop file-state and filesystem safety helper tests.
- Added a larger default desktop window, draggable topbar regions, runtime app icons, and Electron Builder targets for macOS
dmg/zip, Windowsnsis, and LinuxAppImage/deb. - Added dedicated desktop icon assets in
apps/desktop/build. - Added desktop-native recent-file menu routing that preserves renderer unsaved-change prompts before opening files.
- Added desktop app documentation covering status, local-first behavior, security model, limitations, and roadmap.
- Added a shared desktop file adapter to
@titanbase/editorwhile preserving existing browser picker and download behavior. - Clarified that Titanbase Desktop loads its bundled local renderer in production and does not depend on the hosted website.
- Changed desktop Save As defaults to use a slugified project-name
.titan.jsonfilename. - Added source-kind context to the editor file status so desktop users can distinguish blank, template,
.titan.json, and SQL-imported schemas.
0.5.0
Added
Schema Diff
- Added the framework-independent
diffSchemas()API to@titanbase/core. - Added deterministic project, table, column, relation, index, enum, and enum-value changes with stable matching and conservative rename detection.
- Added destructive and breaking change classification, matching warnings, summary counters, and semantic metadata filtering.
- Added a local Compare action and schema diff modal with grouped changes, severity badges, before/after values, object selection, and invalid-file handling.
PostgreSQL Migration Drafts
- Added the deterministic
generatePostgresMigrationDraft()API to@titanbase/export-postgres. - Added draft SQL for table, column, constraint, foreign-key, index, enum-addition, rename, and comment changes.
- Added destructive and breaking metadata plus explicit review warnings for data loss, casts, inferred constraint names, locking, and enum limitations.
- Added a migration preview flow from Schema Diff with warning review, SQL copy, and
.sqldownload actions. - Added focused migration-draft tests and PostgreSQL import-to-migration integration coverage.
Changed
- Extracted shared PostgreSQL identifier, type, column, table, index, and foreign-key formatting helpers for consistent full exports and migration drafts.
0.4.0
Added
Editor
- Added per-action call-to-action affordances on the start screen cards (Create schema, Browse templates, Open file, Import SQL) that reveal on hover.
- Added an explicit responsive viewport configuration for correct mobile rendering and safe-area handling.
- Added actionable project, table, column, relation, index, enum, and metadata diagnostics.
- Added diagnostic entity context, help text, severity counts, issue codes, and direct object selection.
- Added local PostgreSQL
.sqlimport entry points to the start screen, toolbar, empty canvas, and Project Overview. - Added a non-blocking import report for unsupported SQL and a failure state that preserves the current schema.
Importers
- Added
@titanbase/import-postgreswith deterministic browser-safe PostgreSQL DDL parsing. - Added support for enums, tables, column and table constraints, foreign keys, indexes, comments, quoted identifiers, and namespaces.
- Added line-aware warnings for unsupported statements, expression indexes, unsupported constraints, and unresolved references.
- Added 25 importer tests, including a PostgreSQL import/export integration scenario.
Changed
- Reworked the start screen action cards into a balanced, uniform grid with consistent icons, a refined "Recommended" badge, and equal heights.
- Made the start screen scrollable on mobile and stacked the hero, header, and cards for small viewports.
- Compacted the editor toolbar (smaller logo, tighter spacing and controls) and moved the Website and Docs links to the end of the toolbar as icon-only buttons with tooltips.
- Shortened the toolbar "Import SQL" action label to "Import".
- Made the editor toolbar horizontally scrollable so all actions stay reachable on narrow screens.
Fixed
- Fixed the start screen cards rendering as an unbalanced 3 + 1 layout; they now reflow cleanly across breakpoints (4 → 2 → 1 columns) with no orphaned card.
- Fixed the editor canvas not panning on touch devices by removing the oversized shell
min-widththat pushed content beyond the viewport. - Fixed the inspector sidebar being clipped off-screen and its collapse control becoming unreachable on narrower windows.
- Fixed the start screen header overlapping the Docs/GitHub actions on small screens.
- Fixed the oversized website mark icon by setting explicit dimensions.
v0.3.0
Added
Exporters
- Added
@titanbase/export-mermaidfor Mermaid ER diagrams. - Added
@titanbase/export-prismafor Prisma schema files. - Added
@titanbase/export-drizzlefor Drizzle PostgreSQL schema files. - Added shared
ExportFile,ExportWarning, andExportResultcontracts to@titanbase/core. - Added deterministic exporter coverage across all example schemas.
- Added reserved-word, identifier-collision, enum, relation, index, default, and empty-schema tests.
Editor
- Added Mermaid, Prisma, and Drizzle tabs to the export modal.
- Added per-target warnings, previews, copy actions, and file downloads.
- Added Clipboard API fallback behavior for restricted browsers.
- Added pinnable, collapsible, and hover-preview inspector behavior.
- Added project overview, blank-schema flow, richer table cards, relation labels, and compact status bar.
Changed
- Light mode is now the default theme for new and reset editor settings.
- Improved Mermaid identifier collision handling and relation diagnostics.
- Improved Prisma identifier mapping, enum defaults, unique constraints, and ambiguous relation handling.
- Improved Drizzle dependency ordering, reserved identifiers, safe defaults, minimal imports, and cyclic relation warnings.
- Updated README and roadmap to reflect the available local exporters and current product scope.
Fixed
- Prevented generated Prisma relations from referencing non-unique target fields.
- Prevented duplicate Prisma unique constraints when a column is already unique.
- Prevented unsafe Drizzle forward and self references from producing brittle generated code.
- Prevented long exporter warnings from overflowing the export modal.
v0.1.0
What's included
Core (@titanbase/core)
- Portable
.titan.jsonschema format - Zod validation with 15+ diagnostic checks
- Schema normalization for deterministic output
Visual Editor (@titanbase/editor)
- ReactFlow-based canvas with drag-and-drop tables
- Full CRUD: tables, columns, relations, indexes, enums
- Cascade delete (removing a table cleans up relations and positions)
- Undo/redo (80 levels, snapshot-based)
- Dark mode, keyboard shortcuts (Ctrl+Z/Y/S/F, Delete)
- Search/filter, auto-layout, multi-select (Shift+click)
- Relation hover preview with column details
- Cloud-ready API:
onSave,onSchemaChange,cloudModeprops
PostgreSQL Export (@titanbase/export-postgres)
- CREATE SCHEMA, TYPE, TABLE, INDEX, FOREIGN KEY
- COMMENT ON for tables, columns, types, indexes, constraints
- Safe identifier quoting, deterministic output
- Warnings for unsupported types (graceful fallback to text)
Examples
- Blog, E-commerce, SaaS, Messaging (Slack-like), Project Management (Linear-like)