Environment Configuration
Environment Configuration
To run the Japanese ATS Resume Analyzer, you must configure both the frontend environment variables and the Supabase Edge Function secrets. This project relies on Supabase for database and storage, and Resend for automated email notifications.
1. Frontend Environment Variables
Create a .env file in the root of your project directory. These variables are required by Vite to connect the React application to your Supabase instance.
# Supabase Configuration
VITE_SUPABASE_URL=https://your-project-id.supabase.co
VITE_SUPABASE_ANON_KEY=your-public-anon-key
- VITE_SUPABASE_URL: Found in your Supabase Project Settings under API.
- VITE_SUPABASE_ANON_KEY: The public "anon" key found in your Supabase Project Settings under API.
2. Supabase Edge Functions Secrets
The system uses Edge Functions for server-side logic (CV parsing and email notifications). These variables must be set within the Supabase CLI or Dashboard to be accessible at runtime.
Resend Integration
The send-status-notification function requires a Resend API key to transmit emails to applicants.
# Set secret using Supabase CLI
supabase secrets set RESEND_API_KEY=re_your_api_key
- RESEND_API_KEY: Obtain this from your Resend Dashboard.
Internal System Keys
The parse-cv function requires administrative access to update applicant records after processing. While Supabase provides these automatically in the production environment, ensure your project environment has access to:
SUPABASE_URLSUPABASE_SERVICE_ROLE_KEY(Required for bypassing Row Level Security during background processing)
3. Supabase Storage Setup
The application expects a specific storage bucket to handle resume uploads.
- Navigate to Storage in your Supabase Dashboard.
- Create a new bucket named
cvs. - Set the bucket privacy to Public (or configure appropriate Storage Policies to allow the
authenticatedrole to upload and theservice_roleto download).
4. Database Schema
Ensure your Supabase database contains the applicants table. The application expects the following structure (automatically generated if using the provided SQL migrations):
| Column | Type | Description |
| :--- | :--- | :--- |
| id | uuid | Unique identifier (Primary Key) |
| full_name | text | Applicant's name |
| email | text | Applicant's email address |
| cv_file_path | text | Reference to the file in the cvs bucket |
| status | enum | pending, reviewed, accepted, rejected |
| keyword_match_score | int4 | Calculated ATS score (0-100) |
| matched_keywords | text[] | Array of identified skills/keywords |
5. Local Development (Optional)
If you are running Supabase Edge Functions locally for testing, create a .env file inside the supabase/functions/ directory or pass them via the CLI:
supabase start
supabase functions serve --no-verify-jwt --env-file ./supabase/.env.local