This looks pretty interesting! If anyone is looking for a tool to build a full fledge Back Office I warmly recommend react-admin (<a href="https://github.com/marmelab/react-admin/" rel="nofollow">https://github.com/marmelab/react-admin/</a>). Been using it for a year now and we went from 0 back office to a feature full one in no time!
Another worthy mention (not FE, but also exploiting power of sql): <a href="https://github.com/PostgREST/postgrest" rel="nofollow">https://github.com/PostgREST/postgrest</a><p>"PostgREST serves a fully RESTful API from any existing PostgreSQL database. It provides a cleaner, more standards-compliant, faster API than you are likely to write from scratch."
Great work! I once was a fan of custom well tailored DSL's for each tool. However, nowadays I really like the current direction of providing a lot of tooling with only SQL necessary to use them, even with the dialects differing a bit.<p>I've made my own contribution here too, with a tool to join and analyse data in various databases and file formats (JSON, CSV, Excel) using plain SQL, OctoSQL: <a href="https://github.com/cube2222/octosql" rel="nofollow">https://github.com/cube2222/octosql</a>
There is also the idea of Naked Objects [1] based on a thesis from 2004 [2].<p>[1] <a href="http://nakedobjects.org/" rel="nofollow">http://nakedobjects.org/</a><p>[2] <a href="http://downloads.nakedobjects.net/resources/Pawson%20thesis.pdf" rel="nofollow">http://downloads.nakedobjects.net/resources/Pawson%20thesis....</a>
That looks quite useful. The name's pretty clever, too.<p>Tools like these are a viable, low-code (to use a hyped-up term) alternative to creating full-blown back-ends with all the boilerplate code that comes with them. Often these back-ends add little more than a REST API or a simple CRUD interface on top of an SQL database.<p>RDBMS on the other hand are immensely powerful tools that unfortunately more often than are used for little more than simple data storage.
i was stunned the first time i saw web frameworks like django and symfony automatically build a full featured admin panel based on model's definition.<p>I wonder if there aren't projects aimed a building just an administration GUI based on SQL introspection mixed with simple configuration files. Just point at a db, and there you go.<p>Side note : what is the current state of codegen based on api and model specifications ? I feel like 90% of most projects could be automatically generated just based on that.
This looks great! I've used sqlpad[1] for similar purposes which is bit more low level as it allows to write the queries in the browser directly.<p>[1]: <a href="https://github.com/rickbergfalk/sqlpad" rel="nofollow">https://github.com/rickbergfalk/sqlpad</a>
I think this is the long way around to simply making a DB procedure? Those have parameters, can easily be run by external tools like phpMyAdmin or an IDE, and if the database constraints are sane will help avoid invalid input.
So I made something similar to this at a couple of my jobs. We could basically add a SQL script as a file to a folder and it would automatically have a new report, downloadable, formatted, run on-demand. Even a pretty basic one is pretty handy, as they only take a day or two. I hadn't got round to adding variables, I like the solution.<p>One of the things I added is that you could add column formatting in the field names, so a $c would turn it into a currency field, there was one to turn it into boolean checkbox, etc.:<p><pre><code> SELECT o.amount, p.price [price$c], p.price * o.amount [total$c]
FROM orders o
JOIN products p
</code></pre>
It had other features too like you could set column widths by using @ like [amount@75] or even column grouping by dot notation [online.sales], [online.total_value$c], [instore.sales], [instore.total_value$c].
It looks excellent! But I know <a href="https://redash.io" rel="nofollow">https://redash.io</a> already and used it in my last business - does this do something different? I'm always hungry for better SQL business admin tools though.
This is cool. I built something similar awhile back for a side project. I had a folder that I would dump files into and each file would have a title, description, and SQL statement.<p>When I visited a specific page on my site (password protected) I had a bit of Go code that would read all the the files, execute all the (read-only) SQL statements and then dump them into an HTML template that created a table for each one.<p>Made it dead simple to keep track of some simple metrics like daily sign ups, number of users currently on the site, churn, etc.<p>Hopefully I can just reach for this next time and not write my own hacky tool :)
Nice work. I have also build a (mysql) sql based dashboard for our internal use. It mainly shows agregated lists of data and allows to click on many items to see more details.<p>We use it to get more insight in our data. It does not allow a user to enter anything.<p>Basically my app only uses a list of queries. To allow that any selected field is clickable, the result field should be like 'report|name|field,field' so the app knows this is a special link (report) refering to another defined query ('name') and should be passed some values (record specific, here 'field,field').
I use adminer for this. <a href="https://www.adminer.org/" rel="nofollow">https://www.adminer.org/</a> It's a single PHP file, and does everything I need.
Super neat idea and tool!<p>I tried to clone it and run it locally, but it doesn't run. Tried with both yarn and npm.<p><pre><code> > node-sass src/index.scss > public/index.css
sh: 1: node-sass: not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT</code></pre>
I believe admin panels are the MVP implementation for this idea.<p>Almost every business software is a select/insert/update. If you can do it over a view, or you have a trigger on insert/update/delete you are able to have a customer facing product with minimal manual operation.
This look similar to Oracle Apex:
<a href="https://apex.oracle.com/en/" rel="nofollow">https://apex.oracle.com/en/</a><p>from my experience very good for simple logic but once it's is complicated you hate yourself.
Seeing a variety of tools to interact with databases makes me happy.<p>I quit my job recently to work on a similar idea.<p><a href="https://boomsql.com" rel="nofollow">https://boomsql.com</a>. Still working on a landing page and MVP
This is awesome! Saves so much work on building simple admin panels. I have experience in custom software development, and that's such a huge pile of work for developers it's insane
I wonder if there is anything like this but for a larger swath of tools, like say anything that is JDBC or ODBC compliant. More like data virtualization tools like dremio, denodo, atscale.
Does anyone else find it humorous that the majority of top-level comments in this thread start with, "Cool! I built something just like this <insert link to example> because <commercial solution> sucks!"<p>This tells me that (a) it is a common problem, and (b) it is not solved well. I'm guilty too: I manage a large MySQL DB and the admin panels are essentially CRUD UI rendered from the schema. The alt solutions I've clicked on here try to add more functionality, but it seems that's where things break, because every solution is different beyond the 1st-order CRUD UI. This seems to indicate there is no generic solution beyond that?