mirror of
https://github.com/erickgnavar/melocoton.git
synced 2026-04-19 18:43:00 +00:00
Simple database client
https://melocoton.app
- Elixir 67.8%
- HTML 23.6%
- JavaScript 5.1%
- CSS 2.4%
- Rust 0.7%
- Other 0.4%
Replace fragile CSS style-content selector with data-selected attribute, fixing scroll for action items which were never matched by the old query. |
||
|---|---|---|
| .github/workflows | ||
| assets | ||
| config | ||
| lib | ||
| priv | ||
| rel | ||
| src-tauri | ||
| test | ||
| views | ||
| .credo.exs | ||
| .editorconfig | ||
| .formatter.exs | ||
| .gitignore | ||
| build.sh | ||
| justfile | ||
| LICENSE | ||
| mise.toml | ||
| mix.exs | ||
| mix.lock | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
Melocoton
A keyboard-driven, multi-platform database client for SQLite, PostgreSQL, and MySQL. Built with Elixir/Phoenix LiveView and packaged as a desktop app with Tauri.
Features
- Keyboard-native — every action reachable from the keyboard, shortcut hints shown inline
- SQL editor — write and execute queries with results displayed in dense, scannable tables
- Transaction support — interactive transactions with explicit commit/rollback control
- Table explorer — browse schemas, tables, indexes, and column definitions
- Multiple databases — connect to several databases and switch between them quickly
- Connection groups — organize databases by project, environment, or team
- AI assistant — natural language to SQL with schema-aware chat, supporting Anthropic, OpenAI, OpenRouter, MiniMax, and local models via Ollama
- Data export — export query results to CSV or Excel
- Cross-platform — runs as a web app or a native desktop app (macOS, Linux)
Requirements
- mise — manages Elixir, Erlang, and Node.js versions
- just — command runner for common tasks (see
justfile) - Rust — required only for desktop builds (Tauri)
Development
# Install tool versions (Elixir, Node, etc.)
mise install
# Install dependencies and set up the database
just setup
# Start the dev server at localhost:4000
just dev
A justfile defines all common tasks. Run just --list to see available recipes:
just test # Run all tests
just ci # Full CI suite (format + deps + tests)
just fmt # Format code
just release # Full desktop app build
just tauri-dev # Tauri dev mode with hot reload
just db-migrate # Run pending migrations
just db-reset # Drop + create + migrate + seed
Tech stack
| Layer | Technology |
|---|---|
| Backend | Elixir, Phoenix LiveView |
| Frontend | LiveView, Tailwind CSS |
| Desktop | Tauri (Rust) |
| Databases | Postgrex, Exqlite, MyXQL |
| Packaging | Burrito |