A multi-section application form that collects candidate information, uploads resumes/cover letters to Supabase Storage, and submits the application via a Supabase Edge Function.
Form Sections
Personal Information
Field
HTML Element
Validation
First Name
<input>
Required
Last Name
<input>
Required
Phone (country code + number)
<select> + <input>
Required, pattern validated
Email
<input type="email">
Required, email format
Location
<input>
Required
Resume and Cover Letter
Field
HTML Element
Validation
Resume
<input type="file">
Required, max 3.5MB, PDF/DOC/DOCX
Cover Letter
<input type="file">
Optional, max 3.5MB, PDF/DOC/DOCX
Professional Links
Field
HTML Element
Validation
LinkedIn URL
<input type="url">
Optional, URL format
Portfolio URL
<input type="url">
Optional, URL format
Additional Questions
Field
HTML Element
Options
Work Authorized
Radio buttons
Yes / No
Needs Sponsorship
Radio buttons
Yes / No
Open to Relocation
Radio buttons
Yes / No
Why Interested
<textarea>
Optional
Reference Consent
Radio buttons
Yes / No
File Upload Flow
User selects file via <input type="file">
On form submit, files are uploaded to Supabase Storage bucket applications
File paths are stored and passed to the Edge Function submit-application