An open API service indexing awesome lists of open source software.

https://github.com/oetiker/dbtoria

The generic Database Frontend for Endusers
https://github.com/oetiker/dbtoria

Last synced: 6 months ago
JSON representation

The generic Database Frontend for Endusers

Awesome Lists containing this project

README

        

=head1 NAME

DbToRia - Database to Rich Internet Application

=head1 DESCRIPTION

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.

=head1 SETUP

=head2 Backend

Mojo:

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

Json:

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

DB:

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

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

cpanm DBD::SQLite

Other modules needed:

cpanm Config::Grammar
cpanm Try::Tiny

Edit the F file to point to the database of
your choice.

For I put this in your F:

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

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

=head2 Frontend

Get Qooxdoo SDK:

wget http://downloads.sourceforge.net/qooxdoo/qooxdoo-3.5-sdk.zip
unzip qooxdoo-3.5-sdk.zip

cd frontend

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

./generate.sh ../qooxdoo-3.5-sdk build

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

./generate.sh ../qooxdoo-3.5-sdk source

cd ..

=head2 Have Fun(tm)

Run DbToRia with its built-in webserver
for testing:

./backend/bin/dbtoria.pl daemon

And point your browser at

L

=head1 BACKGROUND

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.