Website
# NextStep Africa — Public Health Opportunities Gateway
NextStep Africa is a digital publication and opportunities directory for
African students and healthcare professionals — fellowships, scholarships,
internships, research grants, and career guides focused on public health
leadership across the continent.
Built with **Vite**, **TypeScript**, **Tailwind CSS**, and **Framer Motion**,
backed by **Supabase** (Postgres + Auth) and deployed on **Cloudflare Pages**.
---
## How data works here
- **Opportunities, blog posts, and newsletter subscribers live in Supabase.**
Every visitor sees the same live content, and every admin edit is
immediately visible to everyone.
- **The personal "Application Tracker"** (saving/bookmarking opportunities)
is intentionally local to each visitor's browser — there's no visitor
account system, so this is stored on-device, not in Supabase.
- **The admin portal requires a real Supabase Auth login.** There is no
fallback password. If Supabase isn't configured, the login screen tells
you so instead of offering a demo login.
---
## 🚀 Setup — entirely from a phone browser
You do not need a laptop, Git, or Node.js installed anywhere for this. Every
step below happens in Safari/Chrome on your phone, across three dashboards:
**GitHub**, **Supabase**, and **Cloudflare**.
### 1. Create the Supabase project
1. Go to supabase.com → sign up/log in → **New project**.
2. Once it's created, go to **SQL Editor** → **New query**.
3. Open `supabase-schema.sql` from this repo, copy its entire contents, paste
into the SQL editor, and click **Run**. This creates all three tables and
the security policies in one go.
4. *(Optional)* Your tables are now empty, so the site will look blank until
you publish something. If you'd like a few example opportunities and
articles live immediately, run `supabase-seed-optional.sql` the same way
— you can edit or delete this content from the admin panel any time.
5. Go to **Authentication → Users → Add user → Create …