restore_point functionality to Meetups
- 💾 Introduced `restore_point` JSON column in `meetups` table for saving and restoring master data. - 🛠️ Added methods `captureRestorePoint` and `restoreFromRestorePoint` to `Meetup` model for managing restore points. - 🔒 Implemented authorization for updating meetups via `updateViaPortal` policy to include pivot members. - 🔗 Created Artisan commands `meetups:snapshot` and `meetups:restore` for managing restore points from CLI. - 🚦 Added rate limiter to restrict excessive update attempts in Livewire meetup editing. - ✅ Developed exhaustive feature tests for snapshot and restore actions, portal editing rules, and rate limiting.
BookCase and OrangePill models, factories, migrations, and related references. Added tests for new service and meetup creation flows. Updated PHPUnit settings and browser-specific configurations.
Hosted:
- de-DE: https://portal.einundzwanzig.space/de/meetups
- de-AT: https://portal.einundzwanzig.space/at/meetups
- de-CH: https://portal.einundzwanzig.space/ch/meetups
- pl-PL: https://portal.dwadziesciajeden.pl/pl/meetups
- hu-HU: https://portal.huszonegy.world/hu/meetups
Host your national domain?
To add your national domain, you need to create a CNAME record pointing to portal.einundzwanzig.space.
Here's how:
- Add a subdomain like
portal.yourdomain.tld - Create a CNAME record pointing to
portal.einundzwanzig.space
DNS provider CNAME settings:
Type: CNAME
Name/Host/Alias: portal
Target/Value/Destination: portal.einundzwanzig.space
After setting up your CNAME, please notify the repository owner to refresh SSL certificates to include your domain.
Contributing and Proposals
Development
Prerequisites
- PHP 8.3+
- PostgreSQL (running locally or as a container)
- Redis (running locally or as a container)
- Node.js + Yarn
Installation
cp .env.example .env
composer install
(you need a valid Flux Pro license or send a message to Nostr - The Ben)
Migrate and seed the database
php artisan migrate:fresh --seed
Laravel storage link
php artisan storage:link
Install node dependencies
yarn
Start development environment
composer run dev
This starts the PHP dev server, queue worker, Pail log viewer, and Vite concurrently.
Update dependencies
yarn
Security Vulnerabilities
If you discover a security vulnerability within this project, please go to https://gitworkshop.dev. All security vulnerabilities will be promptly addressed.
License
Open-sourced software licensed under the MIT license.