The official website for the Mauritius Laravel Meetup Community. Built with Laravel 12 and Tailwind CSS.
Laravel Moris is a community website for the Mauritius Laravel Meetup group. It helps members:
- Discover events - Upcoming and past meetups with speakers and sponsors
- RSVP to meetups - Track attendance with Going/Maybe/Not Going options
- Submit talks - Call for papers with speaker information
- Connect with members - Browse the community member directory
- Meet sponsors - View sponsor logos and event history
- Framework: Laravel 12 (PHP 8.4)
- Styling: Tailwind CSS v4
- Database: SQLite (development) / PostgreSQL (production)
- Testing: Pest 4
- Authentication: Laravel Socialite (GitHub, Google OAuth) + Email/Password
- Package Manager: Composer
Brand icons are sourced from coloured-icons by @dheereshag.
Icon files are stored in resources/images/logos/:
discord.svg- Discord community linkwhatsapp.svg- WhatsApp community linklinkedin.svg- LinkedIn community linkgithub-light.svg- GitHub OAuth login buttongoogle.svg- Google OAuth login buttonyoutube.svg- YouTube channel linktwitter.svg- X (Twitter) social linkbluesky.svg- Blue Sky social linkfacebook.svg- Facebook community link
Icons are loaded using Laravel's Vite::asset() helper and styled with Tailwind CSS size-* classes.
- Member profiles with avatar, title, and bio
- Speaking history and attendance tracking
- Event-based RSVP system with status tracking
- Upcoming and past event listings
- Event details with speakers, sponsors, and attendees
- RSVP functionality for authenticated users
- Paper submission for speaking opportunities
- Sponsor directory with event counts
- Individual sponsor profiles with history
- Logo management with fallback support
- PHP 8.4+
- Composer
- Node.js & npm
- Laravel Herd (recommended)
Note
Development Environment Options
New to PHP? Start here:
Option 1: php.new (Windows, Mac, Linux)
- One-line command to install PHP 8.5, Composer, and Laravel
- Fast setup for complete beginners
- Visit php.new
- After installation, use Compose for database/email (see below)
Option 2: Laravel Herd (macOS/Windows) - Free/Paid
- All-in-one
- Includes PHP, Nginx, databases*, and mail interface*
- Free tier works great, uses SQLite by default. PostgreSQL available for production.
- Download Herd
Know PHP but new to Laravel?
Option 3: Compose
- Use your existing PHP installation
- Provides PostgreSQL and Mailpit for email testing (TODO)
- Run:
docker compose up -d(TODO)
Experienced Laravel Developer?
Option 4: Laravel Valet (macOS)
- Free CLI alternative to Herd
- Valet Documentation
Option 5: Valet+ (Linux)
- Valet for Ubuntu/Debian users
- Same lightweight approach as Valet with PostgreSQL included
- Valet+ Documentation
-
Fork & Clone the repository
git clone https://github.com/yourusername/laravelmoris.com.git cd laravelmoris.com -
Install PHP dependencies
composer install
-
Install frontend dependencies
npm install
-
Configure environment
cp .env.example .env php artisan key:generate
-
Setup database
# SQLite database is used by default (no additional setup needed) php artisan migrate php artisan db:seed --class=HomepageSeeder -
Start the development server
composer dev
Or with Laravel Herd, the site is automatically available at
https://laravelmoris.com.testherd init
# Run all tests
php artisan test
# Run with coverage (requires Xdebug or PCOV)
php artisan test --coverage
# Or with herd
herd coverage vendor/bin/pest --coverage# Format code
vendor/bin/pint --dirty
# Static analysis
vendor/bin/phpstan analyse
# Everything at once
composer lint:fixapp/
├── Actions/ # Business logic (Actions-first architecture)
│ ├── Auth/
│ ├── Event/
│ ├── Paper/
│ └── Profile/
├── Controllers/ # HTTP handlers
├── Data/ # Spatie Laravel Data DTOs
├── Enums/ # PHP enums
├── Http/
│ ├── Controllers/
│ └── Requests/
├── Models/ # Eloquent models
├── Queries/ # Data fetching queries
└── Providers/
| Path | Description |
|---|---|
/ |
Home page with upcoming events |
/events |
All events (upcoming & past) |
/events/{id} |
Event details with RSVP |
/members |
Community member directory |
/members/{id} |
Member profile |
/sponsors |
Sponsor directory |
/sponsors/{id} |
Sponsor profile |
/join |
Community links (Discord, WhatsApp, etc.) |
/profile |
User profile (auth required) |
/events/{id}/submit-paper |
Talk submission (auth required) |
/about |
About us page with team info |
/login |
Login page (OAuth + email/password) |
/register |
Registration page |
/terms |
Terms of Service page |
/privacy-policy |
Privacy Policy page |
/cookies |
Cookie Policy page |
Laravel Moris exposes a RESTful API for programmatic access to meetup data.
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/meetups |
List all meetups |
GET |
/api/meetups/{event} |
Get a specific meetup |
users- Community membersevents- Meetup eventspapers- Talk submissionssponsors- Event sponsorscommunity_links- Discord, WhatsApp, etc.
event_user- User RSVPs with status (going/maybe/not_going)event_sponsor- Event sponsorshipspapers- Links users to events as speakers
This is a community project. If you'd like to contribute:
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and code quality tools
- Submit a pull request
MIT License - feel free to use this as a reference for your own Laravel projects.
Built with ❤️ for the Mauritius Laravel Community