Diwata
Diwata is a database interface for PostgreSQL,Mysql, Sqlite with the goal of being usable, user-friendly with its basic and advanced functionality be discoverable by the user.
Demo
Quick local demo setup using sqlite sakila.db
Use the nightly compiler.
git clone https://github.com/ivanceras/diwata
cd diwata
git submodule update --init --recursive
./run_sqlite_sakila.sh
open http://localhost:9000
Features
- Automatic display of direct and indirect linked record
- Freeze column and freeze rows
- Infinite scrolling / loading of page on scrolling
- User friendly granular search and filter
- Diplay descriptive referred records. (ie: Instead of displaying the foreign_key value integer or uuid, display the referred records in such a way it is distinguisable by the user)
- Well integrated with the browsers, clickable tables, records and tabs can be openned in a new window and displays the data as though clicking on it.
Roadmap checklist:
- Basic data display
- Infinite load-on-deman scrolling
- Meaningful dropdown lookup
- Seamless url-based navigation
- Delete records
- Update records
- Insert records
- Detail record update/insert, delete link detail records [ ] Filtering and searching on has_many and indirect records for detailed record
- Undo update/delete records (upon deletion/modification, user have a grace period to undo the changes)
- Search and filter data
- Drag/Rearrange and resize columns
- Multi column sorting
- Smart delete cascade messages
- Error Handling/Error messages display
- Advanced filtering, where user can type in the logic for filtering
- Display of images and file attachments
- Interactive/dynamic record count indicator for toolbar buttons
- Loading indicators
- Page transition animation
- Search/filter on tables
- Table/Columns filtering based on privilege system.
- Display only tables that the user has privilege
- Display only columns that the user has privilege
- An interface for superusers to set user privileges for each tables
- Row level security
- When the server is configured to require user login, the user will be forced to login
- Plugin and module system
- Custom validation on field
- Custom buttons for application specific functionality
Notes:
[1]: You can use sakila database dump as demo database https://github.com/ivanceras/sakila
Patreon:
Please support me on patreon, so I can dedicate more time to the development of this project
Contact me:
ivanceras [a t] gmail.com
Contributors
This project exists thanks to all the people who contribute.
Backers
Please be a backer of this project! π [Become a backer]
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]