This is a platform for building and sharing professional profiles with custom sections, recommendations, and more. The application uses Next.js for the frontend and Supabase for authentication, database, and storage.
- Username-based subdomain profiles (e.g., username.2nd.exchange)
- Customizable profile sections with templates (Work Experience, Education, Projects, etc.)
- Profile recommendations system
- Responsive design with dark mode support
- Clone the repository
- Install dependencies:
npm install - Start the development server:
npm run dev - Initialize Supabase storage:
npm run storage
This project uses Supabase for authentication, database, and storage. You'll need to set up the following:
- Create a Supabase project
- Set up the database schema (migrations are included)
- Configure storage buckets for profile images
- Set up Row Level Security (RLS) policies
A GitHub Actions workflow is included to automate Supabase migrations and deployments. To set it up:
-
Add the following secrets to your GitHub repository:
SUPABASE_ACCESS_TOKEN: Generate from Supabase dashboard (Account > Access Tokens)SUPABASE_DB_PASSWORD: Your Supabase database passwordSUPABASE_PROJECT_ID: Your Supabase project ID (found in project settings)
-
Push to the main branch to trigger the workflow, or run it manually from the Actions tab
-
The workflow will:
- Link to your Supabase project
- Push database migrations
- Set up storage buckets
- Deploy Supabase functions
Create a .env.local file with the following variables:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key