PHsPeed is a low-code, component-based, Rad PHP development tool. It enables you to create database-driven applications in a fraction of the time that you would need using traditional tools. PHsPeed makes use of Bootstrap to enable full responsive behavior. This means that you can create (progressive) web applications with one single code base.


So what is Low Code development? As the name implies you can create applications with a minimum of coding. In many situations, you don’t need code at all, which makes PHsPeed a perfect tool for prototyping. However, although there are ‘no-coding’ tools, we still prefer to call PHsPeed low-code tooling as it still allows you to use code, integrate external libraries with ease, etc. 


Look at it this way. If you go to the supermarket then you can find pre-fabricated microwave food. There are many different options but: you have no control over the content, the amount, or the flavor. You buy a pre-cooked meal and only need to press a button. It saves a maximum of the time, but you can argue about the quality. We would call this a ‘no-code’ platform. You don’t need to know how to cook.


Your food comes from the land. If you have a garden and grow your own food then you must have a lot of knowledge. You need to know about the products you grow, how to do pest control, how to harvest, how to prepare, etc., etc. You have to do it all. For us, that’s a high-code solution. There is a way of support, like machinery, but you have to do a lot, have enough time, etc.


Let’s go back to the supermarket. There you can find potatoes, pasta, rice, couscous, vegetables, etc. You have all the ingredients to create a meal your style, like the components of PHsPeed. It still requires a bit of preparation, but all the hard work is already done. You need to know how to cook (which is not that hard). That is what we call low-code. 


Then there is no-code. It means that you can buy a microwave package. You can still choose, but the contents of the package is fixed, the amount is fixed and the taste is fixed. Perhaps it is a good solution for you, but mostly I prefer to cook my own meal.

So what do you need before you can start?

Well, first of all, a good idea about what you want to create. As PHsPeed is a code-generator, it is tempting to ‘just start’ and let the inspiration come to you. No offense, but that is not a good approach. As PHsPeed is database-driven, it requires a database to work against. This means that you need to start with a suitable data model for your application. 

PHsPeed comes with a built-in MariaDB database. Depending on your installation, it also has created a standard database connection to your database. 


Project workflow



What programming skills do you need?

Honestly, you can build applications without a single line of code. But the truth is, that your requirements eventually will mean that you have to write PHP code. The good news is, you don't need much, and you don't need to be a full qualified PHP developer to be able to build applications. With basic PHP knowledge you should be good to go. JavaScript is used, but you don't need to write it.

Database connection

A database connection is a configuration in PHsPeed that is needed to connect and maintain the metadata (list of tables and fields with data types) and contains a configuration that your PHP environment needs to connect to that same database. 

The IDE connects to the database to retrieve metadata that enables the generator to create forms. Your application will connect to the database to perform Crud operations. 

In principle, you can use any database you like, as long as it supports a PDO driver. PDO is a database-independent layer that controls the connection and maintenance of your database. If you do not use (the internal) MySQL/MariaDB, then you need to install your database manually and apply the correct drivers so that the IDE and the web environment can connect. You will find some sample settings in our manual.

PDO

PHP requires a valid PDO driver and some settings in the PHP configuration file (php.ini) to enable database access. The PDO configuration is a connection string, that PHsPeed will fill with the provided data, like user name, password, etc. 

Configuration outside your PHsPeed projects.

Project independent

The database connection and PDO configuration are maintained in PHsPeed in a project-independent way. The intention is, that connections and PDO configurations can be reused in your several projects. 


Note: If you deploy your application, then the credentials of your database server most likely will be different than your development environment. PHsPeed behaves differently depending on its state.

  • In development
    The connection data is copied into your database component(s). The data is readable and changeable. 


  • In production
    In production, the only way to connect is to create an encrypted configuration file that contains data about the connection. It is possible to bypass this so that you can make use of a single sign-on or a special configuration where you can maintain different connections depending on the user that logs in. These features will not be explained in these lessons. 

Application generators

In PHsPeed you can create your forms using a forms designer. As a good starting point, you can make use of the application wizards that serve as your butler. Just select the table of your choice, apply a few preferences and PHsPeed will fully automatically create your form for crud-operations, grids, or combos. In the tutorial lessons, we will use the applications wizards extensively. But remember. Everything the wizards do can be done by hand. But why should you? Just create the application to get a good starting point, then modify them to your taste.