Files
aperonight/README.md
Kevin BATAILLE 30f3ecc6ad refactor(events): replace parties concept with events throughout the application
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

This commit refactors the entire application to replace the 'parties' concept with 'events'. All controllers, models, views, and related files have been updated to reflect this change. The parties table has been replaced with an events table, and all related functionality has been updated accordingly.
2025-08-28 13:20:51 +02:00

2.1 KiB
Executable File

Aperonight - Event Booking Platform

Aperonight Screenshot

🌃 Overview

Aperonight is a two-sided marketplace connecting event-goers with nightlife promoters in Paris. The platform allows:

  • Customers to discover/book tickets for upcoming events
  • Promoters to create/manage events and validate tickets at venue entrances

🎯 Key Features

For Event-Goers

✔ Browse upcoming events with filters (date, location, music genre) ✔ Book tickets with multiple bundle options (VIP, group passes, etc.) ✔ Secure payment processing (credit cards, Apple/Google Pay) ✔ Mobile-friendly e-tickets with QR codes

For Promoters

✔ Event creation dashboard with ticket type customization ✔ Real-time ticket validation via mobile scanning ✔ Sales analytics and attendee tracking ✔ Automatic aggregation of events from partner platforms

🛠 Technical Stack

Backend

  • Ruby on Rails 7 (API mode)
  • MariaDB database
  • ActiveJob for background processing

Frontend

  • Hotwire (Turbo + Stimulus) for reactive UI
  • Tailwind CSS for styling
  • React Native for promoter mobile app (ticket scanning)

Key Integrations

  • Stripe Connect for payments & promoter payouts
  • Shogun/Bizouk/Weezevent APIs for event aggregation

📊 Database Schema (Simplified)

erDiagram
    USER ||--o{ BOOKING : makes
    USER {
        integer id
        string email
        string encrypted_password
    }
    PROMOTER ||--o{ EVENT : creates
    PROMOTER {
        integer id
        string stripe_account_id
    }
    EVENT ||--o{ TICKET_TYPE : has
    EVENT {
        integer id
        datetime start_time
    }
    BOOKING ||--o{ TICKET : generates
    BOOKING {
        integer id
        decimal total_price
    }
    TICKET_TYPE ||--o{ TICKET : defines
    TICKET_TYPE {
        integer id
        string name
    }
    TICKET {
        integer id
        string qr_code
    }