A Chrome extension to help automate repetitive form filling on the California Employment Development Department (EDD) UI Online certification pages. Automatically fills multiple weeks of certification forms, saving you time and reducing repetitive data entry.
- 🤖 Multi-Week Automation: Automatically processes all certification weeks (typically 2 weeks) in one click
- 📄 Complete Page Coverage: Handles all three pages per week:
- Certification Questions (7 questions)
- Work Search Record
- Clarification Questions (when applicable)
- 📬 ZIP Code Auto-Fill: Saves your ZIP code and automatically fills it on the Review and Submit page
- 🎯 Smart Detection: Automatically detects when you're on Week 1 and shows a green badge reminder
- ✅ Safe Start Validation: Ensures you start from Week 1 to prevent errors
- 🛑 Manual Review: Stops at the Review and Submit page for you to verify before submitting
- 🔒 Privacy First: All processing happens locally in your browser - no data sent to external servers
- 💾 Settings Memory: Your preferences and ZIP code are saved between sessions
-
Download/Clone this extension
- Download all files to a folder on your computer (e.g.,
/Users/dusk/code/edd-extension)
- Download all files to a folder on your computer (e.g.,
-
Open Chrome Extensions Page
- Open Chrome browser
- Navigate to
chrome://extensions/ - Or click the three dots menu → More Tools → Extensions
-
Enable Developer Mode
- Toggle the "Developer mode" switch in the top-right corner
-
Load the Extension
- Click "Load unpacked"
- Navigate to the folder containing the extension files
- Select the folder and click "Select"
-
Verify Installation
- You should see "EDD Certification Helper" appear in your extensions list
- The extension icon should appear in your Chrome toolbar
-
Enter Your ZIP Code
- Click the EDD Certification Helper icon in your Chrome toolbar
- Enter your 5-digit ZIP code in the "Your Information" section
- The ZIP code is automatically saved and will be used for all future certifications
-
Configure Your Default Answers
- Select your preferred answers for each certification question:
- Question 1: Were you too sick or injured to work?
- Question 2: Was there any reason you couldn't accept full-time work?
- Question 3: Did you look for work?
- Question 4: Did you refuse any work?
- Question 5: Did you begin attending school or training?
- Question 6: Did you work?
- Question 6a: Did you receive any income other than wages?
- Select your Work Search Record preference
- Select your Clarification Question answer (for other income)
- Select your preferred answers for each certification question:
-
Navigate to Week 1 Certification Page
- Log into UI Online at https://uio.edd.ca.gov/
- Start your certification and navigate to Week 1 Certification Questions
- The extension icon will show a green badge with "1" when you're on the right page
-
Start Auto-Fill
- Click the extension icon (it may open automatically when you reach Week 1)
- Click the "Auto-Fill All Pages" button
- The extension will now automatically:
- Fill all 7 certification questions for Week 1
- Click "Next" and fill the Work Search Record page
- Click "Next" and fill the Clarification page (if it appears)
- Move to Week 2 and repeat the same process
- Continue for all weeks that need certification
- Stop at the "Review and Submit" page with your ZIP code filled
-
Review and Submit
- IMPORTANT: The extension stops at the Review and Submit page
- Carefully review all your answers for all weeks
- Make any necessary corrections manually
- Manually click the Submit button when you're satisfied
For each week being certified, the extension automatically:
- ✅ Fills all 7 Certification Questions
- ✅ Clicks "Next" to navigate to Work Search Record
- ✅ Fills the Work Search preference
- ✅ Clicks "Next" to navigate to Clarification (if applicable)
- ✅ Fills the Clarification question (if page appears)
- ✅ Clicks "Next" to move to the next week
- ✅ Repeats for Week 2, Week 3, etc.
- ✅ Fills ZIP code on the Review and Submit page
- 🛑 Stops for manual review and submission
The extension comes with these default settings (typical for active job seekers):
- Too sick/injured? No
- Couldn't accept work? No
- Did you look for work? Yes ⭐
- Refuse any work? No
- Begin school/training? No
- Did you work? No
- Other income? No
- Save work search to UI Online? No
- Other income received this week? No
edd-extension/
├── manifest.json # Extension configuration and permissions
├── popup.html # User interface (popup window)
├── popup.js # Main logic for orchestrating multi-page automation
├── background.js # Background service worker (Week 1 detection)
├── content.js # Content script (runs on EDD pages to detect Week 1)
├── icon16.png # Extension icon (16x16)
├── icon48.png # Extension icon (48x48)
├── icon128.png # Extension icon (128x128)
├── README.md # This file
└── QUICK_START.md # Quick reference guide
Multi-Page Orchestration:
- The popup script (
popup.js) remains active and coordinates the entire process - For each page navigation:
- Detects the current page type
- Injects a small script to fill that specific page
- Clicks the "Next" button
- Waits for navigation to complete using Chrome's Tab API
- Re-injects on the new page and continues
Week 1 Detection:
- A content script (
content.js) runs on all EDD pages - When it detects you're on Week 1 Certification Questions:
- Sends a message to the background script
- Sets a green badge on the extension icon
- Attempts to auto-open the popup (requires user gesture in some browsers)
- Initial Validation: Ensures you're starting on Week 1 Certification Questions page
- Page Detection: Identifies which page is currently loaded by checking for specific element IDs
- Script Injection: Uses
chrome.scripting.executeScript()to inject filling scripts - Form Filling: Locates form elements by their unique IDs and sets values
- Navigation: Clicks "Next" buttons and waits for page loads using
chrome.tabsAPI - Loop Processing: Continues until reaching the Review and Submit page
- ZIP Code Storage: Uses
chrome.storage.syncto persist your ZIP code across sessions
The extension requires:
activeTab: To interact with the current EDD pagescripting: To inject form-filling scriptsstorage: To save your ZIP code and preferencestabs: To monitor page navigation completionhost_permissionsforhttps://uio.edd.ca.gov/*: To run only on EDD pages
- Make sure Developer Mode is enabled in
chrome://extensions/ - Try reloading the extension by clicking the refresh icon
- Restart Chrome browser
- Refresh the EDD certification page
- Check the browser console (F12) for errors
- Make sure you're on the Certification Questions page, not another page
- You must start the automation from the Week 1 Certification Questions page
- Navigate back to the first page of your certification
- Look for "Week 1:" text on the page to confirm
- Make sure you're on
uio.edd.ca.gov - Open the browser console (F12) and look for error messages
- Check that your internet connection is stable
- Try refreshing the page and starting again
- Verify the ZIP code is entered in the popup (should be saved automatically)
- Check the console for messages about ZIP field detection
- The field ID may have changed - see Customization section
- Click the extension icon and verify your settings
- Adjust the radio buttons in the popup to your preferred answers
- Settings are saved automatically when changed
The extension provides detailed console logging for debugging. Open Chrome DevTools (F12) and check the Console tab to see:
- 🚀 Script start/completion
- 🔍 Page detection results
- 📝 Form filling progress
- ✅ Successful operations
- ❌ Errors and warnings
- 🔘 Button click attempts
- ⏳ Navigation waiting
Enable "Preserve log" in the console to see logs across page navigations.
If the EDD website structure changes, you may need to update element IDs:
For Certification Questions (popup.js, fillCertificationPage function):
const page1Map = {
'q1': 'contentMain_contentMain_ucFormCCA4581RegularDUACertificationQuestionsV2_frmDE4581FullTime_prtDE4581FTQuestion1_ctl00_rblValue_',
// ... update as needed
};For Work Search Record (popup.js, fillWorkSearchPage function):
const workSearchRadioNo = 'contentMain_contentMain_ucRegularDUA4581WorkSearchRecordV2_frmFormWorkSearchInformation_rblWorkSearch_0';For ZIP Code (popup.js, fillReviewSubmitPage function):
const zipField = document.getElementById('contentMain_contentMain_txtMailingZipCode');The main orchestration happens in processAllWeeks() function in popup.js:
detectCurrentPage(): Identifies the current pagefillCertificationPage(): Fills Week X Certification QuestionsfillWorkSearchPage(): Fills Work Search RecordfillClarificationPage(): Fills Clarification QuestionsfillReviewSubmitPage(): Fills ZIP code on Review page
- 🔒 Local Processing: All form filling happens locally in your browser
- 🚫 No External Connections: The extension doesn't send any data to external servers
- 📊 No Analytics: No tracking, telemetry, or usage data collection
- 💾 Local Storage Only: ZIP code and settings are stored in Chrome's local storage
- 👀 Open Source: You can review all the code to verify its behavior
- 🛡️ Minimal Permissions: Only requests necessary permissions for functionality
IMPORTANT:
- This extension is for educational and convenience purposes only
- You are responsible for ensuring the accuracy of all information submitted to the EDD
- Always review all answers on the Review and Submit page before clicking Submit
- The extension automates form filling but does not guarantee correctness
- This is not an official EDD tool and is not affiliated with the State of California
- Improper use may result in certification delays or denials
- Use at your own risk
- Only works on Chrome/Chromium browsers (Edge, Brave, etc.)
- Requires you to start from Week 1 Certification Questions page
- Only supports answers for "healthy, haven't been working, looking for work" (some other answers not supported)
- Does not handle error pages or unexpected page structures
- Clarification page detection is based on current EDD page structure
- Cannot handle unique situations that require special answers
If you encounter issues:
- Check the Troubleshooting section above
- Open Chrome DevTools (F12) with "Preserve log" enabled
- Look for console messages with emojis (🚀, ✅, ❌, etc.)
- Verify you're using the latest version of Chrome
- Try reloading the extension at
chrome://extensions/
To update the extension:
- Download the latest version of the files
- Go to
chrome://extensions/ - Click the refresh icon ↻ on the EDD Certification Helper card
Potential improvements for future versions:
- Support for different certification types (part-time, reduced earnings, etc.)
- Export/import settings profiles
- Better error recovery and retry logic
- Support for additional EDD forms
- Accessibility improvements
This is an open project. Feel free to:
- Report bugs or issues
- Suggest new features
- Submit improvements to the code
- Share with others who might find it useful
This project is licensed under the MIT License - see the LICENSE file for details.
Version: 1.0 Last Updated: January 2026 Compatibility: Chrome 88+, Edge 88+, Brave, other Chromium browsers EDD Website: https://uio.edd.ca.gov/