rodloboz
Lotus - Lightweight, SQL query runner and storage for Phoenix apps
I’ve started working on a new library to run SQL queries and do basic business intelligence.
Think “Blazer for Elixir.”
Currently it features a SQL explorer + saved queries + schema browser — mounted right inside your Phoenix app. Supports both Posgresql and SQLite (multiple data source repos).
It can be used as standalone or with the web UI (separate repos):
First Post!
dimitarvp
I think I get what is this about and I love the idea but a few screenshots and a video would be great.
Most Liked
dimitarvp
![]()
In the age of the LLMs this expression gives me PTSD. ![]()
Thanks for adding the screenshot. Would love seeing a video later if you ping this thread in the future.
rodloboz
rodloboz
Lotus 0.11.0 & LotusWeb 0.10.1 - Dashboards are here!
Excited to share the latest Lotus release: Dashboards - combine multiple queries into interactive, shareable views.
Dashboard Features:
- 12-column grid layout - Arrange cards (queries, text, headings, links)
- Public sharing - Generate secure tokens to share dashboards with external stakeholders (no login required)
- Parallel execution - All query cards run concurrently with configurable timeouts
Automatic Type Casting System:
This release also introduces intelligent type casting for query variables. Lotus now automatically detects column types from your database schema and casts variable values accordingly:
- PostgreSQL enums with pass-through handling
- Composite types with JSON input support
- Time values with ISO8601 parsing
- Graceful fallback when schema info is unavailable
The system uses a new Lotus.Storage.TypeHandler behaviour, so you can implement custom handlers for your own database types.
Try the demo: Lotus Dashboard
Upgrade with:
{:lotus, “~> 0.11.0”},
{:lotus_web, “~> 0.10.0”}
Feedback and questions welcome!
Last Post!
rodloboz
Hey everyone! Really excited about this one! Our latest versions of Lotus and Lotus Web make up the biggest Lotus release yet.
AI Assistant
We added a bunch of new AI capabilities on top of the multi-turn conversations from the previous release:
- Explain query / Explain fragment — select a piece of SQL you don’t understand and the AI breaks it down in plain English. Really useful when you’re looking at someone else’s query or a complex JOIN.
- Optimize query — runs EXPLAIN under the hood and gives you suggestions like missing indexes, query rewrites, etc.
- Variable-aware — the AI now understands the
{{variable}}and[[optional clause]]syntax, so it can generate parameterized queries with the right variable types and input widgets out of the box.
On the provider side, we now support way more LLMs — OpenAI, Anthropic, Google, Groq, Mistral, and anything else ReqLLM supports. BYOK as always.
16 chart types
We expanded the visualization options significantly: bar, horizontal bar, line, area, combo (dual-axis), scatter, bubble, histogram, heatmap, pie, donut, funnel, waterfall, KPI card, trend, gauge, progress bar,
and sparkline. The picker is now organized by category (Charts, Distribution, Part of Whole, Single Value) which makes it easier to find what you need.
Interactive results
Query results are no longer just a static table:
- Right-click any cell to quick-filter results (equals, not equals, greater than, LIKE, IS NULL, etc.)
- Right-click column headers to sort ascending/descending
- Hover on a column header to see statistics — min, max, avg, median, distinct count, and a histogram
- Active filters and sorts show as dismissible chips above the results
These are applied as CTEs on top of your query, so the original SQL stays untouched.
Dashboard filters
Dashboards now support interactive filter widgets — dropdowns, date pickers, text inputs, date ranges. You map them to query variables per card, and they reflect in URL query parameters so filtered views are bookmarkable and shareable. Works on both the editor and public dashboards.
We also redesigned the website to better showcase all the new features — check it out at lotus.typhoon.works with demo videos of the main capabilities.
And we now have a Discord if you want to chat, ask questions, or share what you’re building: discord.gg/qnvcdjvw
We’ve been getting issues and PRs from people using Lotus in production and it’s been incredibly motivating. We’d love more of that — whether it’s bug reports, feature ideas, or contributions. Come help us shape where this goes.
Popular in Announcing
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #metaprogramming
- #security
- #hex










