proglabs/wizards-toolkit
Low-code development environment for PHP programmers PHP, SQL, JS. Full working website included.
114
Wizards Toolkit is a low-code development environment for PHP programmers. This is a combination of PHP, SQL, JavaScript and MaterializeCSS designed to make the development of full-featured data-driven websites and mobile apps fast and maintaining them easy. This repository has the SQL table definitions and initial data as SQL scripts, the HTML, CSS and JavaScript. It also includes the documentation created via phpDocs and several demo files showing exact code for most standard features and pages.
When you use this you are starting with a fully functioning website and database which includes user registration and management, SQL report generator, widget generator, data-driven menus and much more.
By default MySQL 8.3 is used but you can change to whatever version you prefer. Code for PostgreSQL:latest is also included and fully tested if you prefer PostgreSQL.
Here are the simple steps to have a complete working Docker container for Wizard's Toolkit development. This simple container contains a complex docker-compose.yml setup which will provide you a Nginx, MySQL, PHP-FPM environment including phpMyAdmin.
There is an alternate docker-composePG.yml included which builds for PostgreSQL as follows:
Wizard's Toolkit has also been fully tested to work with php:7.4-fpm.
This Docker container allows testing Wizard's Toolkit running on your local development environment to see how easy and intuitive it is. Deploying to a production web server does require a small subscription fee.
Installation Steps First create a new empty folder. In Terminal run the following to pull from Docker the WTK library:
docker pull proglabs/wizards-toolkit
This is an image which includes all web pages, SQL scripts, a docker-compose.yml and all necessary Dockerfile and nginx.conf files. Next start the container by running in Terminal:
docker run --name wtk_website -d proglabs/wizards-toolkit
Next extract all files from this image into your folder:
docker cp wtk_website:/wtkapp/. .
You are now done with the simple "holding" container. You won't need this again and can stop/remove it. This puts all the web pages into ./app folder accessed as a VOLUME so you can access and easily edit the web pages.
Next step uses WTK.sh to docker compose build which accesses the docker-compose.yml file to build your Nginx, MySQL, PHP, phpMyAdmin environment.
./WTK.sh
If you went the PostgreSQL route (by removing docker-compose.yml and rename docker-composePG.yml to docker-compose.yml), then the PostgreSQL database is auto-generated. If you stayed with the MySQL then you need to run the provided SH file in Terminal:
./SETUP_MYSQL.sh
That creates the database and default user, creates 58 tables, adds triggers, functions, procedures and initial core lookup data. Everything needed for a standard website to track users, outbound emails, errors, updates, manage widgets, SQL reports and much more.
A comprehensive README.md file is included in the root folder with more technical details.
docker pull proglabs/wizards-toolkit