Laravel Filament H5x is a powerful Learning Management System (LMS) component designed to create and manage interactive learning activities. Inspired by H5P, it leverages the robustness of Laravel, the elegance of Filament Admin, and the interactivity of React (via Inertia.js) to deliver a seamless educational experience.
- Interactive Video Player: Engage learners with video content that supports interactive elements.
- Activity Management: Easily create, edit, and manage learning activities through a user-friendly admin panel.
- Live Preview: Instantly preview your interactive content as you build it.
- Modern Stack: Built with the latest technologies for performance and scalability.
- Dockerized: Fully containerized environment for consistent development and deployment.
- Backend: Laravel 11
- Admin Panel: FilamentPHP v3
- Frontend: React.js with Inertia.js
- Styling: Tailwind CSS
- Database: MySQL (via Docker)
- DevOps: Docker & Docker Compose
Follow these steps to get the project up and running on your local machine.
Ensure you have the following installed:
- Docker
- Docker Compose
- Make (optional, but recommended for using the Makefile)
-
Clone the repository
git clone https://github.com/yourusername/laravel-filament-h5x.git cd laravel-filament-h5x -
Set up environment variables
cp .env.example .env
-
Build and start the containers We use a
Makefileto simplify common commands.make build make up
-
Install dependencies
make install # Installs PHP dependencies make npm-install # Installs Node dependencies
-
Setup Database
make fresh # Runs migrations and seeders -
Start Development Server
make npm-dev
Access the Filament admin panel to manage content:
- URL:
http://localhost/admin - Credentials: (Check
database/seeders/DatabaseSeeder.phpor create a user viamake artisan cmd="make:filament-user")
Access the public-facing learning activities:
- URL:
http://localhost
| Command | Description |
|---|---|
make up |
Start Docker containers |
make down |
Stop Docker containers |
make shell |
Access the app container shell |
make artisan cmd="..." |
Run Artisan commands (e.g., make artisan cmd="migrate") |
make test |
Run PHP tests |
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is open-sourced software licensed under the MIT license.
