An AI-powered Chrome extension that provides real-time design and accessibility feedback on any webpage using Google's Gemini API.
- 🎨 Floating Assistant: Draggable, resizable UI that stays on top of any webpage
- 🔍 Three Analysis Modes:
- Accessibility (WCAG Focus): Detailed accessibility audit with WCAG 2.1 guidelines
- UX Critique: User experience evaluation and recommendations
- Branding Audit: Brand identity and visual consistency analysis
- 💬 Custom Queries: Ask specific questions about the webpage design
- 📱 Responsive Design: Works on any screen size
- ⚡ Real-time Analysis: Instant feedback using Gemini Vision API
- Python 3.8 or higher
- Google Chrome browser
- Gemini API key from Google AI Studio
cd server
pip install -r requirements.txtexport GEMINI_API_KEY="your-gemini-api-key-here"Or create a .env file in the server directory:
GEMINI_API_KEY=your-gemini-api-key-here
cd server
python server.pyThe server will start on http://localhost:5001
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode" (toggle in top right)
- Click "Load unpacked"
- Select the
chrome-extensionfolder from this project - The extension should now appear in your extensions list
Run the test script to verify everything is working:
python test_extension.py- Load the Extension: After loading the extension, visit any website
- Floating Assistant Appears: A floating assistant will appear in the top-right corner
- Choose Analysis Mode: Select from the dropdown:
- Accessibility: Get WCAG 2.1 compliance feedback
- UX Critique: User experience recommendations
- Branding Audit: Brand identity analysis
- Get Feedback: Click "Get Design Suggestion" to analyze the current page
- Custom Questions: Use the text area to ask specific questions about the design
- Drag & Resize: Move the assistant around and resize it as needed
Provides detailed accessibility audit including:
- Color contrast issues
- Keyboard navigation problems
- Screen reader compatibility
- ARIA attribute recommendations
- HTML/CSS implementation details
- WCAG 2.1 guideline references
Evaluates user experience aspects:
- Layout consistency
- Navigation flow
- Interactive elements
- Visual appeal
- Mobile responsiveness
Analyzes brand identity:
- Color scheme consistency
- Typography hierarchy
- Visual elements
- Brand voice and tone
- Recognition and memorability
slide_accessibility_checker/
├── chrome-extension/
│ ├── manifest.json # Extension configuration
│ ├── background.js # Background service worker
│ ├── assistant.js # Content script for floating UI
│ ├── assistant.css # Styles (if separate)
│ ├── assistant.html # HTML template (if separate)
│ └── icon.png # Extension icon
├── server/
│ ├── server.py # Flask server with Gemini API
│ ├── prompts.py # AI prompts for different modes
│ ├── requirements.txt # Python dependencies
│ └── logging_config.py # Logging configuration
├── test_extension.py # Setup verification script
└── README.md # This file
- Check that all files are in the
chrome-extensionfolder - Verify
manifest.jsonis valid JSON - Check Chrome's extension page for error messages
- Ensure the server is running on port 5001
- Check firewall settings
- Verify the API key is set correctly
- Check your Gemini API key is valid
- Verify you have sufficient API credits
- Check the server logs for detailed error messages
- Refresh the webpage after loading the extension
- Check browser console for JavaScript errors
- Ensure the extension is enabled
The extension uses Google's Gemini Pro Vision API. To check your API usage:
- Go to Google AI Studio
- Check your usage dashboard
- Monitor your quota and billing
- Add the mode to
server/prompts.py - Update the dropdown in
chrome-extension/assistant.js - Test the new mode
Edit server/prompts.py to modify the AI prompts for each analysis mode.
Modify the CSS in chrome-extension/assistant.js to change the appearance of the floating assistant.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is open source and available under the MIT License.
If you encounter issues:
- Check the troubleshooting section above
- Run
python test_extension.pyto diagnose problems - Check the server logs for detailed error messages
- Open an issue on the repository with detailed information
# Create a ZIP file of your chrome-extension folder
cd chrome-extension
zip -r ../design-assistant-extension.zip *- Go to: Chrome Web Store Developer Dashboard
- Sign in with your Google account
- Pay one-time fee: $5 USD registration fee
- Upload your ZIP file
- Fill out store listing:
- Extension name: "Floating Design Assistant"
- Description: "AI-powered design and accessibility feedback tool"
- Screenshots/videos of your extension in action
- Privacy policy (required)
- High-quality screenshots (1280x800px)
- Detailed description of features
- Privacy policy (since you're using AI APIs)
- Clear usage instructions
# Initialize git repository
git init
git add .
git commit -m "Initial commit: Floating Design Assistant Chrome Extension"
# Create GitHub repo and push
# (You'll need to create the repo on GitHub first)
git remote add origin https://github.com/yourusername/design-assistant-extension.git
git push -u origin mainCreate a README.md with:
# Floating Design Assistant Chrome Extension
## Installation (Developer Mode):
1. Download this repository
2. Open Chrome → chrome://extensions/
3. Enable "Developer mode"
4. Click "Load unpacked"
5. Select the `chrome-extension` folder
6. Set up the server (see server/README.md)# Create a distribution package
mkdir distribution
cp -r chrome-extension distribution/
cp -r server distribution/
cp README.md distribution/
cp test_extension.py distribution/
cp check_api_credits.py distribution/
# Create installation script
echo '#!/bin/bash
echo "Installing Floating Design Assistant..."
cd server
pip install -r requirements.txt
echo "Installation complete! See README.md for setup instructions."
' > distribution/install.sh
chmod +x distribution/install.sh- Upload to Google Drive, Dropbox, or similar
- Share the download link
- Include setup instructions
- API Key Management: Users need their own Gemini API key
- Privacy Policy: Required for Chrome Web Store
- Data Handling: Explain what data is processed
- Setup Guide: How to get API key and start server
- Usage Instructions: How to use the extension
- Troubleshooting: Common issues and solutions
- Terms of Service: Usage terms
- Privacy Policy: Data handling practices
- Attribution: Credit for AI services used
- Start with GitHub (Option 2) for developer sharing
- Create comprehensive documentation
- Get user feedback and improve
- Then publish to Chrome Web Store (Option 1) for public access
Would you like me to help you create any of these distribution packages or documentation?