The generic Database Frontend for Endusers
JavaScript Perl CSS Shell
Latest commit 4a23659 Apr 9, 2014 @oetiker Merge pull request #18 from maettu/master
sync maettus changes



DbToRia - Database to Rich Internet Application


DbToRia is generic SQL database frontend. Just point it to your database and get a user friendly web interface. By providing DbToRia with additional information about the nature of your database the user interface can be further optimized.




 cpanm  Mojolicious
 cpanm  MojoX::Dispatcher::Qooxdoo::Jsonrpc


 cpanm  JSON::XS
 cpanm  Mojo::JSON::Any


 cpanm  DBI
 cpanm  DBD::(put-your-driver-here)

For quick results use testing-db (which is a SQLite):

 cpanm  DBD::SQLite

Other modules needed:

 cpanm  Config::Grammar
 cpanm  Try::Tiny

Edit the backend/etc/dbtoria.cfg file to point to the database of your choice.

For quick results put this in your backend/etc/dbtoria.cfg:

 *** General ***
 dsn = DBI:SQLite:dbname=../backend/t/sqlite_db/dbtoria_test_db

 mojo_secret = MyCookieSecret
 log_file = /tmp/dbtoria.log
 schema = public
 encoding = latin


Get Qooxdoo SDK:


 cd frontend

If you just want to build the production ready version of the frontend:

 ./ ../qooxdoo-3.5-sdk build

If you want start hacking and debuging the frontend, build the source version by calling

 ./ ../qooxdoo-3.5-sdk source

 cd ..

Have Fun(tm)

Run DbToRia with its built-in webserver for testing:

 ./backend/bin/ daemon

And point your browser at



DbToRia contains of two parts. One is the backend which uses Perls Mojo Web Framework, its Jsonrpc-Dispatcher and some Perl code to interact with the database. The other is the frontend which uses the JavaScript Qooxdoo Framework for Rich Internet Applications and some JavaScript code to build the website you interact with.

The frontend sends json rpc requests which are handled by the backend. After the requested information is sent back using json, too, the view is updated.