PingCRM is a demo application built with Laravel 12, Inertia.js v2, React 19, and Tailwind CSS v4. It demonstrates how to build modern, full-stack applications with these technologies while showcasing many advanced Laravel features.
- Laravel 12: The latest version of Laravel
- Inertia.js v2: With SSR
- React 19: The latest version of React
- Tailwind CSS v4: With shadcn
- TypeScript
- Bun: npm replacement
- Internationalization: i18next for seamless multi-language support (EN/FR)
- Laravel Features:
- Queue processing with Horizon
- Task scheduling
- Real-time websockets with Reverb
- Octane
- MariaDB
- Valkey: Redis-compatible key-value store
- FrankenPHP: PHP 8.4
The easiest way to run this project is with DDEV, a Docker-based local development environment.
-
Clone this repository:
git clone https://github.com/fouteox/pingcrm-react-inertia-laravel.git cd pingcrm-react-inertia-laravel
-
Start the application:
ddev start && ddev launch
That's it! This single command will:
- Install PHP dependencies (Composer)
- Install Node.js dependencies (Bun)
- Run database migrations and seeders
- Start Horizon for queue processing
- Configure and start the task scheduler
- Start Reverb for websocket functionality
- Launch the application in your browser
The project includes a GitHub Actions workflow for deploying to your own server using Cloudflare Tunnels. I personally host the live demo version on a Raspberry Pi. A detailed tutorial on self-hosting this application will be available soon, documenting the process of setting up a production environment on low-cost hardware with Cloudflare Tunnel for secure remote access.
The original Vue.js version was created by Jonathan Reinink. A React version was later created by Lior Rocks, which served as inspiration for this implementation.