This is a modern web application for Nexius Academy's Generative AI training courses, built with React, TypeScript, Vite, and Supabase.
- Course catalog and registration
- AI-powered chatbot advisor
- Newsletter subscription
- Responsive design with Tailwind CSS
- Secure API key handling via Supabase Edge Functions
- Node.js (v16 or higher)
- Supabase account
- Google Gemini API key
-
Copy
.env.exampleto.env:cp .env.example .env
-
Update the
.envfile with your Supabase credentials:VITE_SUPABASE_URL=your_supabase_project_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key -
Configure the Google Gemini API key as a secret in your Supabase project:
- Go to your Supabase Dashboard
- Navigate to Edge Functions > Secrets
- Add a new secret:
GOOGLE_API_KEYwith your Google Gemini API key
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser to
http://localhost:5173
-
Add environment variables in Netlify:
VITE_SUPABASE_URL: Your Supabase project URLVITE_SUPABASE_ANON_KEY: Your Supabase anonymous key
-
The Google API key is securely stored in Supabase Edge Functions and doesn't need to be configured in Netlify.
-
Deploy:
npm run build
- Frontend: React + TypeScript + Vite
- Styling: Tailwind CSS
- Database: Supabase PostgreSQL
- Edge Functions: Supabase Edge Functions (Deno)
- AI: Google Gemini API (accessed securely via Edge Functions)
- API keys are never exposed to the client
- Google Gemini API calls are proxied through Supabase Edge Functions
- Environment variables for sensitive data are stored securely
- Row Level Security (RLS) enabled on all database tables
