Logo Lanfrica

xavierdotcodes/diasporajunction

Domaine:

education

Type de record:

software
Créateur:
xav
Hôte:
Diaspora Junction is a creative learning platform where diasporans reconnect with Ghana through real, unscripted language sessions, structured Twi/Fante courses, and immersive cultural tour packages. Hosted by a diasporan learning directly from Ghanaian friends, the platform blends humor, honesty, and heart to make learning feel personal and real. # DiasporaJunxion DiasporaJunxion is a SvelteKit app for diaspora-focused relocation, content, and paid access products around Ghana. The housing slice now supports: - public diaspora-facing housing browsing - Supabase Auth for owner login and session handling - owner listing drafts with image upload support - Stripe Checkout for a one-time listing submission fee - manual review and publication through a lean admin workflow ## Stack - SvelteKit - Prisma + Postgres - Tailwind - Stripe - Supabase Auth + Supabase Storage ## Local Setup 1. Copy envs: ```bash cp .env.example .env ``` 2. Fill in at least: - `DIRECT_DATABASE_URL` - `DATABASE_URL` - `PUBLIC_SUPABASE_URL` - `PUBLIC_SUPABASE_PUBLISHABLE_KEY` or `PUBLIC_SUPABASE_ANON_KEY` - `PUBLIC_HOUSING_STORAGE_BUCKET` - `PUBLIC_SUPABASE_ENABLE_GOOGLE_AUTH=0` - `PUBLIC_SUPABASE_ENABLE_FACEBOOK_AUTH=0` - `STRIPE_SECRET_KEY` and the right webhook secret for your environment - `HOUSING_ADMIN_EMAILS` with the Supabase email(s) allowed to operate `/admin/housing` 3. Install dependencies: ```bash bun install ``` 4. Apply migrations: ```bash bunx prisma migrate deploy ``` For local development, `bunx prisma migrate dev` is also fine. 5. Seed sample housing listings if you want a usable starting point: ```bash bunx prisma db seed ``` 6. Start the app: ```bash bun run dev ``` ## Housing Routes Public housing: - `/housing` - `/housing/listings` - `/housing/listings/[slug]` - `/housing/list-your-property` Owner portal: - `/housing/owners` - `/housing/owners/listings/[id]` Auth: - `/login` - `/signup` - `/auth/callback` - `/auth/logout` Admin: - `/admin/housing` ## Stripe Flow Property owners pay a one-time listing submission fee. The flow is: 1. Owner signs in with Supabase. 2. Owner creates or edits a listing draft. 3. Owner uploads images to Supabase Storage. 4. Owner clicks pay and submit. 5. Stripe Checkout opens in `mode=payment`. 6. The webhook marks the listing `PENDING_REVIEW` after successful pay …

Languages