The missing link : Database creator would make Wappler a true App Builder

I think it was mentioned that something like this might be included in Wappler at some point. I expect it might be quite a popular feature - which might be a good reason for including it.

Personally, I would prefer that the Wappler developers concentrated on features which are not already catered for by third-party programs. There are lots of features which are not yet included, or at least not documented. For Wappler to get the widespread interest and following it deserves, it needs to compete with lots of other frameworks (Angular, Vue.js, ReactJS etc., as well as the PHP frameworks). None of these (as far as I know) offer what you suggest, but I don’t think with any of them the reply to a question is never ‘this is not yet possible with xxx.js’). This reply appears quite often in the DMX forums - and probably applies still to Wappler. I don’t think people suggest that any of the other frameworks are lacking because they don’t manage the database side of things.

I think it would be a huge task to develop really good tools to manage all of the databases supported by Wappler (MySQL, SQLite, MS SQL Server etc.) - and such tools already exist. I use MySQL for websites and use Navicat to manage these databases. It’s excellent software. The same company develops software to manage many databases.

Also, should it be such a simple task to add a new field anyway, given you may need to consider type, length, indexes and other constraints? I think your suggestion is a little like suggesting that Wappler should incorporate image-editing software. Perhaps it could, however there is adequate third-party software available.

Thats’ the winning combination of software I use … Wappler and Navicat.

You have basically already done this with wappler…refactor the program into a database like the video program Davinci resolve… we should not have to create a database when we create the app or the web page… because the project is the DATABASE. I am now adjusting to the logic which is basically php but it is still tediuos…10 times easier then trying to learn each function and nuance. And I am no php expert… but I am learning the flow of php with wappler… in essense you have create a database or encylopedia of php /asp code snippets that I do not have to remember or really even know how it works…(how visual programming should be) but I am repeating myself a lot with the logic and flow. You are doing a great job… and this is just a feature Request… you are doing nothing wrong. You guys are great. And the support is great! :grinning: and I am recommending Wappler to everyone I know.

What I just suggested has not even been created(livecode almost has this…they are just are missing the database piece which I am a trying to build with livecode). I do not have time to sit around and write code for the web and server side. That is why I bought wappler. Wappler team has effectively programmed all the server side syntax in php and asp to programmable snippets that we can create serverside apps a remarkable feat. It’s just a widget that does this in the background so I can save myself a few extra steps…keep all the others and cheers to your freedom…more time is all I seek.

Actually we have this planned as a Database Creator in Wappler. So you will be able to create database structures and meta data directly in Wappler!

This will be also very useful for the mobile app or when client side database are required because those databases need to be created on the fly for each user.

That said - the Database Creator is indeed a large undertaking so we will do it once we implemented all the base components, so it has a bit lower priority right now

2 Likes

Any updates on a database creator?

4 Likes

I personally don’t think I would use it. I just don’t see it being able to do it as easily and efficiently as Navicat. I could be wrong though.

1 Like

Also very interested in the database creator!

1 Like

We will be working on it this summer. It is a complex matter but very needed not only when using hosting but also for local databases when building apps.

So we want to get it right and we’ll in Wappler visual way style.

1 Like

Something licke „kickstarting“ a DB would be nice. I mean to be honest, mostly we have for user DB‘s each time the same columns like ID, name, lastname, birthday, city, etc etc.

Also for products some stuff are similar. But maybe it could be done more „generic“ like speaking of objects instead of products or articles. And maybe at the end some „customization“ could help, where a user just could change rows etc. What about to have some kickstart snippets from community driven library? So all these projects which are done on wappler could be shared in SOME parts.

So somebody could just put his „addressbook kickstart db“ into that wappler community (:star::star::star: Star Rated) asset folder?

Here my old link for Snippet Library. So that feature could be merged together and increase community shared snippets a lot!

Thanks George, I can image it is a difficult feature

@brad, thanks, will try Navicat

@George I read somewhere that you were planning to include version control for DBs.

How are you planning to approach this? Through migrations? Or something else?

Well initially we will be making database creation and management as easy as possible in Wappler.
This means that you will be able to manage an existing database structures but also create new ones.

Basic features and usage

For people without much database experience we will even be supplying a built-in database services in the form of SQLite. So you can easily create a simple database and just use it without the hassle of running a full blown database server. (read bubble users :slight_smile: )

Also we will be offering “meta” database management, so that you not only enter your table/fields info - but also their purpose and validation. So you will have simple types like text, file, image, etc and you can focus on what to store than how.

This way we will be able to auto-generate all the needed Server Connect CRUD actions, with validation but also file upload, validation etc when needed. Also we will be able to generate much richer client side forms with the file upload and validation as well - because we have all this meta data.

Advanced features

For the advanced users we will be binding all this with git version control. You will be adding support for version numbering and do indeed automatic migrations between versions. We are looking to empower the same migration methodology as sequelize, but will have to make it also available on the different server models we support.

We are looking at different git workflows to see which ones suites best our users.

Our preference goes for gitflow, but as it might be a little overkill for our users, we can choose a simplified version like git ship or oneflow

6 Likes

That’s a winner. When you pair that in the future with an integrated web server. Bam!

Another winner. Bubble has this but it’s not flexible. You get the meta types predefined by them. Being able to define your own…:+1:t2:

This could open the possibility for an auto-generated bootstrap CRUD table component right? Admin dashboards? BAM. Third winner.

Precisely what I had in mind. :muscle:t2:

As for the git workflows I will have a look. Gitflow is kind of defacto solution so I haven’t looked much into other lighter ones. I’ll check the links.

Thank you very much @george for taking the time to explain how you are planning on tackling all this. It’s amazing how transparent you are guys giving enough time to the users to provide input and express concerns(if any).

Kudos!

4 Likes

On a sidenote: funny how this only has 3 votes :joy:

It’s also great that besides the community votes you also have a future vision for the product and already know where you want it to go.

It’s clear for me now that you know you want to get from A to B but you are flexible with the path and taking detours to satisfy the users.

3 Likes

This is interesting @George ! The app I am planning to rebuild with Wappler into mobile/desktop UIs will need part of its data stored locally on the user’s device (i.e. emails), but I want all other data stored in the cloud, so multiple users are able to interact with it. I was waiting for NPM/Node to use some of the packages along with something like pouchDB, but will SQLite allow me to store data within the Electron and native apps?

yes - that is actually the most used native storage solution with apps

2 Likes

What about the ability to sync native mobile apps with SQLlite and SQL server/MySQL on the server side for offline syncing or occasionally connected apps?

5 Likes

And if you can build a tool that simply manages table relationships you’ll be on to a winner :grin:

4 Likes