CRUD Admin Generator

An open source tool to generate a complete backend from a MySql database.

Download now!

Generate a complete backend from a MySql database. In seconds.

The backend is generated in seconds without configuration files where there is a lot of "magic" and is very difficult to adapt to your needs.

Open Source

The code is hosted on GitHub. Fork it and send us your pull requests.

PHP code

It has been programmed with the Silex framework, so the resulting code is PHP.

CRUD

Generates one menu section for each database table. Now will be much easier to list, create, edit and delete items!

From your existing database

Generate the backend from your existing database.

Table relations

When a column ends in "_id" and the first part is a database table, the edit and create form automatically generates a select with the "name", "title", "username" or "email" column of this table. Also, on listings, that value is displayed instead of the "id".

Easy to extend and customize

The generated code is "pure" PHP code, you can modify and adapt to your needs.

Responsive design

We used this bootstrap based design: AdminLTE

Installation


Clone GitHub repository:

git clone https://github.com/jonseg/crud-admin-generator.git admingenerator
cd admingenerator

Download composer:

curl -sS https://getcomposer.org/installer | php

Install vendors:

php composer.phar install

You need point the document root of your virtual host to /path_to/admingenerator/web

This is an example of VirtualHost:

<VirtualHost *:80>
   DocumentRoot /path_to/admingenerator/web
   DirectoryIndex index.php
   <Directory "/path_to/admingenerator/web">
        Options Indexes FollowSymLinks
        Order Allow,Deny
        Allow from all
        AllowOverride all
        <IfModule mod_php5.c>
           php_admin_flag engine on
           php_admin_flag safe_mode off
           php_admin_value open_basedir none
        </ifModule>
   </Directory>
</VirtualHost>

You can customize the url using the .htaccess file, maybe this will help you:
http://stackoverflow.com/questions/24952846/how-do-i-remove-the-web-from-my-url/24953439#24953439

Generate CRUD backend


Edit the file /path_to/admingenerator/src/app.php and set your database conection data:

$app->register(new Silex\Provider\DoctrineServiceProvider(), array(
    'dbs.options' => array(
        'db' => array(
            'driver'   => 'pdo_mysql',
            'dbname'   => 'DATABASE_NAME',
            'host'     => 'localhost',
            'user'     => 'DATABASE_USER',
            'password' => 'DATABASE_PASS',
            'charset'  => 'utf8',
        ),
    )
));

You need to set the url of the resources folder.
Change this line:

$app['asset_path'] = '/resources';

For the url of your proyect, for example:

$app['asset_path'] = 'http://domain.com/crudadmin/resources';

Now, execute the command that will generate the CRUD backend:

php console generate:admin

This is it! Now access with your favorite web browser.

The command generates one menu section for each database table. Now will be much easier to list, create, edit and delete rows!

Screenshots

Author

Jon Segador

Developer

Fork me on GitHub