A comprehensive event scheduling and management system built with Laravel for managing student organization events, approvals, and notifications.
- Multi-role System: SuperAdmin, OSA Admin, GSO Admin, and Student Organization roles
- Event Request Management: Submit, track, and manage event requests
- Approval Workflow: Multi-level approval system (OSA & GSO)
- Calendar Integration: Visual event calendar with scheduling
- Notifications Center: Real-time notifications for event updates
- Reschedule Requests: Handle event rescheduling with approval workflow
- Reports & Analytics: Generate reports on events and activities
- Archive Management: Maintain historical event records
- Framework: Laravel 11.x
- Frontend: Livewire 3, TailwindCSS 4, DaisyUI
- UI Components: Mary UI
- Database: MySQL/MariaDB or SQLite
- Build Tool: Vite
Before you begin, ensure you have the following installed:
- PHP 8.2 or higher
- Composer
- Node.js 18+ and npm
- MySQL 8.0+ or MariaDB 10.3+ (or use SQLite for development)
- Git
git clone <repository-url>
cd org-events-scheduling-systemcomposer installnpm installCopy the example environment file and configure it:
cp .env.example .envEdit the .env file with your configuration:
APP_NAME="PLV Event Scheduling System"
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_TIMEZONE=Asia/Manila
APP_URL=http://localhost
# Database Configuration
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=org_events_db
DB_USERNAME=root
DB_PASSWORD=php artisan key:generateCreate the database:
mysql -u root -p
CREATE DATABASE org_events_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
EXIT;php artisan migrateIf seeders are available, run:
php artisan db:seedphp artisan storage:linkFor development:
npm run devFor production:
npm run buildphp artisan serveVisit http://localhost:8000 in your browser.
After running seeders, you can login with these default accounts:
- SuperAdmin: superadmin@plv.edu.ph / password
- OSA Admin: osa@plv.edu.ph / password
- GSO Admin: gso@plv.edu.ph / password
- Student Org: student@plv.edu.ph / password
Note: Change these passwords immediately in production!
For the best development experience, run both Laravel and Vite servers:
# Terminal 1 - Laravel server
php artisan serve
# Terminal 2 - Vite dev server
npm run devIf using Laragon or similar, the servers may start automatically.
org-events-scheduling-system/
├── app/
│ ├── Http/
│ │ ├── Controllers/
│ │ └── Middleware/
│ ├── Models/
│ └── Providers/
├── bootstrap/
├── config/
├── database/
│ ├── migrations/
│ └── seeders/
├── public/
│ └── images/
├── resources/
│ ├── css/
│ ├── js/
│ └── views/
│ ├── layouts/
│ ├── osa/
│ ├── student-orgs/
│ └── superadmin/
├── routes/
│ └── web.php
├── storage/
├── tests/
└── vite.config.js
/- Landing page/login- Login page/register- Registration page
/student-org/dashboard- Dashboard/student-org/submit-ticket- Submit event request/student-org/my-tickets- View submitted tickets/student-org/calendar- Event calendar/student-org/notifications- Notifications center/student-org/reschedule- Reschedule requests/student-org/history- Event history
/admin/dashboard- OSA dashboard/admin/event-req- Manage event requests/admin/calendar- Calendar view/admin/archive- Archived events/admin/reports- Reports and analytics/admin/accounts- User management
/superadmin/dashboard- SuperAdmin dashboard/superadmin/users- User management/superadmin/roles- Roles & permissions/superadmin/settings- System settings/superadmin/logs- Transaction logs
npm run buildcomposer dump-autoloadchmod -R 775 storage bootstrap/cache- Verify database credentials in
.env - Ensure database server is running
- Check if database exists
rm -rf node_modules package-lock.json
npm install- Follow PSR-12 coding standards for PHP
- Use Laravel's conventions and best practices
- Keep components modular and reusable
- Create a feature branch from
main - Make your changes
- Test thoroughly
- Submit a pull request
git add .
git commit -m "feat: add new feature description"
git push origin feature-branch-nameRun tests with:
php artisan test- Set
APP_ENV=productionin.env - Set
APP_DEBUG=falsein.env - Generate production app key
- Run
composer install --optimize-autoloader --no-dev - Run
npm run build - Run migrations:
php artisan migrate --force - Clear and cache config:
php artisan config:cache - Clear and cache routes:
php artisan route:cache - Clear and cache views:
php artisan view:cache - Clear all cache:
php artisan optimize:clear - Set proper file permissions
- Configure SSL certificate
- Set up backup system
- Configure queue workers if using queues
This project is proprietary software developed for Pamantasan ng Lungsod ng Valenzuela.
Developed by PARENTECH - 2025