From 31534b2c0cc8724e1264a170f7da92c4e3463681 Mon Sep 17 00:00:00 2001 From: kbe Date: Sat, 16 Aug 2025 22:28:41 +0200 Subject: [PATCH] New homepage --- README.md | 81 +++++-- app/views/components/_header.html.erb | 29 +-- app/views/pages/home.html.erb | 195 ++++++++++++++++- package-lock.json | 50 ++++- package.json | 9 +- yarn.lock | 302 +++++++++++++++++++++----- 6 files changed, 582 insertions(+), 84 deletions(-) diff --git a/README.md b/README.md index 7db80e4..61d6690 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,79 @@ -# README +# Aperonight - Party Booking Platform -This README would normally document whatever steps are necessary to get the -application up and running. +![Aperonight Screenshot](app/assets/images/screenshot-homepage.png) -Things you may want to cover: +## 🌃 Overview -* Ruby version +**Aperonight** is a two-sided marketplace connecting party-goers with nightlife promoters in Paris. The platform allows: -* System dependencies +- **Customers** to discover/book tickets for upcoming parties +- **Promoters** to create/manage events and validate tickets at venue entrances -* Configuration +## 🎯 Key Features -* Database creation +### For Party-Goers +✔ Browse upcoming parties 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 -* Database initialization +### 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 -* How to run the test suite +## 🛠 Technical Stack -* Services (job queues, cache servers, search engines, etc.) +### Backend +- **Ruby on Rails 7** (API mode) +- **MariaDB** database + +- **ActiveJob** for background processing -* Deployment instructions +### 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) + +```mermaid +erDiagram + USER ||--o{ BOOKING : makes + USER { + integer id + string email + string encrypted_password + } + PROMOTER ||--o{ PARTY : creates + PROMOTER { + integer id + string stripe_account_id + } + PARTY ||--o{ TICKET_TYPE : has + PARTY { + 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 + } +``` diff --git a/app/views/components/_header.html.erb b/app/views/components/_header.html.erb index 0c0f841..3008b2a 100644 --- a/app/views/components/_header.html.erb +++ b/app/views/components/_header.html.erb @@ -1,7 +1,3 @@ -