- Nama: Rifqi Banu Safingi
- Kelas: XI PPLG 1
- Nomor Absen: 33
This project is an Event Management System built with Laravel 10, Tailwind CSS, and Laravel Breeze. It allows admins to create and manage events, while users can browse and register for these events with integrated payment processing via Midtrans payment gateway.
- Two-tier user system (admin and regular user)
- User authentication and profile management
- Event creation and management (admin only)
- Event registration and ticketing (users)
- Payment processing with Midtrans
- Event search and filtering
The application uses the following data structure:
- PHP ^8.1
- Composer
- Node.js & NPM
- MySQL/PostgreSQL
- Laravel Framework ^10.10
- Laravel Sanctum ^3.3
- Laravel Tinker ^2.8
- Midtrans PHP SDK ^2.6
- GuzzleHTTP ^7.2
- Vite
- Alpine.js ^3.4.2
- Tailwind CSS ^3.1.0
- Axios ^1.6.4
-
Clone the repository:
git clone <repository-url> cd <project-folder>
-
Install PHP dependencies:
composer install
-
Install JavaScript dependencies:
npm install
-
Create environment file:
cp .env.example .env
-
Generate application key:
php artisan key:generate
-
Configure your database in the
.env
file:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=event_management DB_USERNAME=your_username DB_PASSWORD=your_password
-
Run migrations and seeders:
php artisan migrate --seed
-
Configure Midtrans payment gateway in the
.env
file:MIDTRANS_SERVER_KEY=your_server_key MIDTRANS_CLIENT_KEY=your_client_key MIDTRANS_IS_PRODUCTION=false MIDTRANS_MERCHANT_ID=your_merchant_id
-
Start the development server:
php artisan serve
-
Compile assets:
npm run dev
-
Admin
- Create and manage events
- View all registrations
- Access administrative dashboard
- View payment statistics
-
User
- Browse available events
- Register for events
- Make payments
- View personal registration history
This project uses Laravel Breeze for authentication which provides:
- Login
- Registration
- Password Reset
- Email Verification
- Password Confirmation
- User registers for an event
- System redirects to payment page
- User selects payment method via Midtrans
- After payment, Midtrans sends notification to the system
- System updates registration status
npm run build
app/Models
- Contains models for Users, Events, Registration, Paymentsapp/Http/Controllers
- Controllers for managing application logicapp/Http/Middleware
- Includes role-based access control middlewaredatabase/migrations
- Database schema migrationsdatabase/seeders
- Default data seedersresources/views
- Blade templates for frontendroutes/web.php
- Web routes definitions