- PHP 52.3%
- Blade 42.1%
- CSS 4.4%
- Dockerfile 0.8%
- JavaScript 0.3%
- Other 0.1%
|
|
||
|---|---|---|
| .github/workflows | ||
| app | ||
| bootstrap | ||
| config | ||
| database | ||
| kubernetes | ||
| public | ||
| resources | ||
| routes | ||
| storage | ||
| tests | ||
| .editorconfig | ||
| .env.example | ||
| .gitattributes | ||
| .gitignore | ||
| artisan | ||
| compose.yaml | ||
| composer.json | ||
| composer.lock | ||
| docker-entrypoint.sh | ||
| Dockerfile | ||
| herd.yml | ||
| package-lock.json | ||
| package.json | ||
| phpstan.neon | ||
| phpunit.xml | ||
| pint.json | ||
| README.md | ||
| rector.php | ||
| vite.config.js | ||
openSUSE Lounge
openSUSE Lounge is a tool for maintaining member records. The project aims to modernize and simplify the current membership management process.
Tech Stack
- Laravel — Backend framework powering the core application logic, routing, and data management.
- MySQL — Relational database management system for storing and managing application data.
- Tailwind CSS — Utility-first CSS framework used for building responsive and clean user interfaces.
- Alpine.js — Lightweight JavaScript framework for adding interactivity and dynamic behavior to frontend components.
This stack ensures a modern, maintainable, and developer-friendly environment.
Local Setup
Follow the steps below to get openSUSE Lounge running locally:
-
Clone the repository
git clone https://github.com/opensuse/opensuse-lounge.git -
Install dependencies
composer install npm install -
Set up the environment
cp .env.example .env php artisan key:generate
Update the .env file with your database credentials and any other required configuration.
-
Run database migrations and seed the database
php artisan migrate --seed -
Build frontend assets (on a different terminal session)
npm run dev -
Start the development server (if you do not use herd/LAMP-like stack)
php artisan serve -
Other commands available
# will create a new user and assign roles and send password via email php artisan make:user --help # Edit an existing user php artisan make:edit-user --help
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, use
compose.yamlor DBngin (MacOS) for MySQL as complementary- Download Herd
Know PHP but new to Laravel?
Option 3: Compose
- Use your existing PHP installation
- Provides MySQL 8.5 and Mailpit for email testing
- Run:
docker compose up -dExperienced 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 MYSQL included
- Valet+ Documentation
Using Compose
You can use the provided
compose.yamlfor a complete development environment:
MySQL 8.4:
- Port: 3306
- Database: opensuse_lounge
- User: opensuse / Password: password
- Root password: root
Mailpit:
- Web UI: http://localhost:8025
- SMTP: localhost:1025
Run with: docker compose up -d
Update .env:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=opensuse_lounge
DB_USERNAME=opensuse
DB_PASSWORD=password
MAIL_MAILER=smtp
MAIL_HOST=127.0.0.1
MAIL_PORT=1025
Visit http://localhost:8000 in your browser.