尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Web app aggregating events happening in Lebanon. Browse by category and date publicly; sign in via social login (Google / Facebook / Apple) to see full details, save favorites, get reminders, and add events to Google Calendar / iCal.
Stack: Next.js 16 (App Router, RSC) · TypeScript · Supabase (Postgres + Auth + RLS) · Tailwind CSS v4 · next-intl (en/ar/fr, RTL) · Mapbox · ics.
npm install
cp .env.local.example .env.local
# fill in Supabase + Mapbox + Resend keys
npm run dev
Open http://localhost:3000 — the proxy will redirect to /en.
supabase/migrations/0001_init.sql (then 0002, 0003) into the SQL editor, or run supabase db push.<your-site>/auth/callback..env.local.Get a public token at https://account.mapbox.com/ and set NEXT_PUBLIC_MAPBOX_TOKEN.
/[locale]/ — home (featured events)./[locale]/events — public browse with category chips + date presets + governorate + search./[locale]/events/[slug] — details; auth-gated./[locale]/map — Mapbox view with clustered pins./[locale]/favorites — saved events./[locale]/submit — user submission form (admin approves)./[locale]/become-a-promoter, /[locale]/promoter, /[locale]/promoter/new-event — promoter application + dashboard + event submission./[locale]/admin — admin queue (role-gated)./auth/callback — Supabase OAuth callback./api/ics/[eventId] — downloads .ics./api/calendar/google/[eventId] — 302 to Google Calendar template.src/
app/
[locale]/ # all localized routes
auth/callback/ # OAuth return URL
api/ # ICS + Google Calendar redirects + ingestion
components/ # UI + feature components
i18n/ # next-intl routing + navigation helpers
lib/
supabase/ # client / server / admin / proxy session refresh
calendar.ts # Google Calendar URL + ICS builder
queries.ts # server-side event queries
utils.ts # cn, date/price formatters, locale picker
messages/ # en | ar | fr
proxy.ts # Next 16 proxy: next-intl + Supabase session refresh
supabase/
migrations/ # 0001_init, 0002_add_promoter_role, 0003_promoter_insert_policies
functions/ # Edge functions (ingestion, reminders) — TODO
Forked from the QuePasa UAE app and adapted for Lebanon: governorates replace emirates, currency is USD, timezone is Asia/Beirut, languages are English/Arabic/French. Auth gating, browse/filter UI, RTL, event detail with media carousel, calendar export, submission flow, promoter subscription system, and admin approval queue all carried over from the UAE app.
TODO before launch: wire the social-auth providers in Supabase Studio for this project specifically, seed real Lebanon events, build the send-reminders cron function, review French/Arabic translation coverage, and run an accessibility audit.