Case study · Independent product development
Astoria SQL Client — Cross-Platform MySQL Client
Building the database tool I wanted to use myself
Astoria SQL Client is a desktop application for working with MySQL databases, available for Windows and Linux.
I created it after struggling to find a database client that combined stability, a focused feature set and a good user experience. Existing tools often felt unreliable, unnecessarily complex or dated. I wanted something closer to the directness of phpMyAdmin, but with the convenience and polish of a modern desktop application.

From personal need to public product
I planned Astoria SQL Client as a public product from the beginning, although its earliest versions were used only by me. At that stage, I still relied on other database tools whenever functionality was missing.
I continued developing the application until it was stable and complete enough for everyday work, then made it publicly available. Today, it covers my own MySQL workflow without requiring another database client alongside it.
This has kept development grounded in real use: repetitive actions, unclear interfaces and small workflow interruptions quickly become visible when I encounter them in my own work.
Building the complete product independently
I am responsible for the entire product: its direction, architecture, application development, interface design, website, release process and ongoing maintenance.
The application supports the complete workflow expected from an everyday MySQL client, including:
- Browsing and editing data
- Writing and executing SQL queries
- Managing tables, columns, indexes and relationships
- Importing and exporting databases, query results and selected records
- Organising connections and open tabs into restorable workspaces
- Connecting directly or through SSH tunnels
- Protecting locally stored credentials with encryption and a master password
Product and UX decisions
My goal has been to keep common database operations easy to find without reducing the application to a basic query editor.
Features such as schema-aware SQL suggestions, direct data editing, visual filters, remembered workspaces and context-sensitive actions are designed to reduce friction in routine development work. The interface supports both writing SQL directly and using visual tools when they are faster or more convenient.
Building a product I use myself also creates a direct feedback loop. Decisions are tested against real database work rather than based only on assumptions about how developers might use the application.
Cross-platform delivery
I built the application with Electron to provide a consistent desktop experience across Windows and Linux.
Releases are prepared through GitHub Actions, including Windows packages and Linux AppImage builds. The application is distributed through the Microsoft Store, the Snap Store and direct downloads from its website.
I manage this process independently, from building and testing releases to maintaining the public website and publishing new versions.
Summary
Astoria SQL Client demonstrates more than the implementation of individual features. It represents the complete development of a software product: identifying a genuine problem, defining the product direction, designing the experience, building the application and establishing a repeatable cross-platform release process.
The result is a stable MySQL client that I use in my own daily work and continue to develop as a public product. It is the clearest example in my portfolio of my ability to take full ownership of a product across engineering, UX and delivery.