This is a scaffolding project that comes with authentication & users CRUD. It is a Single Page Application (SPA) built on top of React.js in the frontend & Laravel in the backend.
- Progressive Web App (PWA)
- Supports multiple locales
- Stateless authentication system
- Datatables with server-side pagination, sorting & dynamic filtering
- Undo common actions
- Docker ready
- Image Intervention integration for image uploads
- Drag & drop file uploads.
- Supports dark mode.
You can check out the live preview
- Clone the repo
git clone https://github.com/palonponjovertlota/laravel-react-admin.git
. - Go to your project folder from your terminal.
- Run:
composer install
andnpm install
to install application dependencies. - Copy the
env.example
file into a.env
file and then configure based on your local setup. - Installation is done, you can now run:
php artisan serve
thennpm run watch
. - The project will run in this URL: (http://localhost:3000).
If you prefer Docker, there is a working setup provided to get you started in no time. Check your local setup to make sure that running this app in docker will work correctly:
If you are a Linux / Mac user, make sure to give the application proper file permissions. The php-fpm image uses www-data
as its default user:
cd ~/your_projects_folder
sudo chown ${USER}:www-data -R laravel-react-admin
Make sure that the address 127.0.0.1:80
usually localhost
is available on the host machine. It must be assured that apache2, nginx or any http webserver out there is not running on the host machine to avoid address and port collision.
To make this app run on docker you must add a custom host address pointing to localhost
or 127.0.0.1
.
You can now run the image using the docker-compose up
and optionally pass the --build
flag if you intend to build the image. The app can be visited here http:your_custom_host_address
.
In development, do note that all files inside this app is bind-mounted into the container, docker will just use the existing directories, in our concern the vendor
and node_modules
. Here is an example of running a composer install command: docker container exec -it laravel-react-admin-php-fpm composer install --no-interaction --no-plugins --no-scripts
.
You can run any artisan commands directly into the laravel-react-admin-php-fpm
container. Here is an example of a migration command: docker container exec -it laravel-react-admin-php-fpm php artisan migrate:fresh --seed
.
As we are bundling frontend assets with webpack under the hood, you must specify the custom host address where the application runs in docker so that webpack can proxy that to be able to develop using docker. You can pass a --env.proxy
flag when running for example the npm run watch
command: npm run watch -- --env.proxy=http:laravel-react-admin.test
.
You could use PhpMyAdmin to browse your MySql database as it is included in this Docker integration. Just add a Virtual Host that points to 127.0.0.1
& the Domain should be the same with your custom host address:
// /etc/hosts
127.0.0.1 phpmyadmin.laravel-react-admin.test
You could then visit PhpMyAdmin here: phpmyadmin.laravel-react-admin.test
Run the tests with:
// If you have installed composer globally
composer test
// This should also work
./vendor/bin/composer test
Please see CHANGELOG for more information on what has changed recently.
Please see Contributing for more details.
If you discover any security-related issues, please email palonponjovertlota@gmail.com instead of using the issue tracker.
- @reeshkeed for designing the logo & design ideas.
The MIT License (MIT). Please see License File for more information.