LiveTable Major Update: Complete Flexibility & Custom UI Control
Hey everyone! ![]()
Following up on the initial LiveTable announcement - we’ve shipped some major improvements based on real-world usage and feedback.
The Problem We Faced
Building with LiveTable, we realized that having the library generate queries was a lot tougher than anticipated. We kept running into walls with:
- Complex business logic integration
- User permissions and access control
- Custom filtering scenarios that didn’t fit standard patterns
- Advanced query requirements (joins, aggregations, nested associations)
The Solution: Full User Control
We decided to pivot completely and give full control back to you, the developer:
Query Freedom
- Define ANY Ecto query you want
- Add filters to your custom queries
- Full control over joins, conditions, and data transformation
Custom UI Mode
- Completely replace our UI components with your own
- Card mode with custom layouts and styling
- Custom headers, content, and pagination components
- Perfect for design systems and branded interfaces
Streams vs Assigns Choice
- Use Phoenix streams for optimal performance
- Or stick with traditional assigns if that fits your architecture
- Seamless switching between modes
Transformers - The Game Changer
This is the most powerful feature we’ve added:
- Complete query control with any input/DOM element
- Custom sort orders via select menus
- Complex filtering logic that was impossible before
- Stateful filters that remember context across requests
URL State Persistence
The icing on the cake - URL remembers everything:
- Filter states persist across page refreshes
- Shareable URLs with exact table state
- Bookmarkable filtered views
- Works with all new features seamlessly
Real-World Success
We’re using this in production for an advanced college counselling platform with:
- Complex rank calculations based on institution types
- Multiple transformers working together
- Custom header with integrated filtering UI
- Card mode with rich college information display
This app serves as an advanced demo of LiveTable.
Check it out at Josaa App
Git Repo of Josaa App- Git Link
What This Means for You
- Simple tables: Still incredibly easy with
schema:parameter - Complex applications: Now possible with complete flexibility
- Custom designs: Full UI control without fighting the framework
- Business logic: Implement any filtering/sorting logic you need
The documentation has been completely rewritten with real-world examples, comprehensive API reference, and step-by-step guides.
The demo application has been moved to https://livetable.gurujada.com
v0.3 will be released on hex shortly. Check it out on git right now!
Excited to see what you all build with this!
What complex table requirements are you struggling with? We’d love to hear how these new features might help! Or any new feature requests!




















