Chromium Browser Configuration
Glance supports traffic interception for Chromium-based browsers via standard command-line flags.
Supported Browsers
- Google Chrome
- Microsoft Edge
- Brave Browser
- Chromium
One-Click Launch (Dashboard)
The easiest way to use Glance with Chromium browsers is via the dashboard:
- Open Glance Dashboard at
http://localhost:15501 - Go to the Integrations tab
- Click "Launch Browser" under the Chromium / Chrome section
This will automatically:
- Launch your default Chromium browser
- Configure it to use Glance proxy
- Ignore certificate errors (for development convenience)
- Use a temporary, isolated user profile (doesn't affect your main browser)
Manual Configuration
You can launch your browser with the following flags to route traffic through Glance:
Chrome/Chromium
# macOS
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--proxy-server="http://localhost:15500" \
--ignore-certificate-errors \
--user-data-dir="/tmp/glance-chrome"
# Linux
google-chrome \
--proxy-server="http://localhost:15500" \
--ignore-certificate-errors \
--user-data-dir="/tmp/glance-chrome"
# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" ^
--proxy-server="http://localhost:15500" ^
--ignore-certificate-errors ^
--user-data-dir="C:\Temp\glance-chrome"Edge
# macOS
"/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge" \
--proxy-server="http://localhost:15500" \
--ignore-certificate-errors \
--user-data-dir="/tmp/glance-edge"
# Windows
"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" ^
--proxy-server="http://localhost:15500" ^
--ignore-certificate-errors ^
--user-data-dir="C:\Temp\glance-edge"Note: We use
--user-data-dirto create a temporary, isolated profile. This ensures your main browser settings and extensions don't interfere with the proxy, and prevents "Profile in use" errors.
System Proxy (All Apps)
To route all browser traffic through Glance without command-line flags:
macOS
- System Preferences → Network
- Select your active network
- Advanced → Proxies
- Enable Web Proxy (HTTP) and Secure Web Proxy (HTTPS)
- Set both to:
- Server:
localhost - Port:
15500
- Server:
- Click OK → Apply
Windows
- Settings → Network & Internet → Proxy
- Enable Use a proxy server
- Set:
- Address:
localhost - Port:
15500
- Address:
- Save
Linux
# GNOME
gsettings set org.gnome.system.proxy mode 'manual'
gsettings set org.gnome.system.proxy.http host 'localhost'
gsettings set org.gnome.system.proxy.http port 15500
gsettings set org.gnome.system.proxy.https host 'localhost'
gsettings set org.gnome.system.proxy.https port 15500
# Or use environment variables
export HTTP_PROXY=http://localhost:15500
export HTTPS_PROXY=http://localhost:15500Certificate Trust
For production use (not recommended for development), you can import Glance's CA certificate:
Chrome Certificate Manager
- Open Chrome → Settings → Privacy and Security → Security
- Click Manage Certificates
- Go to Authorities tab
- Click Import
- Select the Glance CA certificate from
http://localhost:15501/ca.crt - Check "Trust this certificate for identifying websites"
However, for development, using --ignore-certificate-errors is easier and doesn't require import.
Extension Development
For testing browser extensions:
chrome --proxy-server="localhost:15500" \
--ignore-certificate-errors \
--load-extension="/path/to/extension" \
--user-data-dir="/tmp/glance-chrome"DevTools Integration
Glance works alongside Chrome DevTools:
- Open DevTools (F12 or Cmd+Option+I)
- Go to Network tab
- You'll see requests in both:
- Chrome DevTools (client-side view)
- Glance Dashboard (proxy-side view)
This gives you two perspectives:
- DevTools: Browser's view, timing, caching
- Glance: Network view, headers, ability to mock
Headless Mode
For automated testing:
chrome --headless \
--proxy-server="localhost:15500" \
--ignore-certificate-errors \
--dump-dom https://example.comUseful for:
- CI/CD testing
- Automated screenshot capture
- Web scraping with proxy
Puppeteer Integration
If you're using Puppeteer:
const puppeteer = require('puppeteer');
const browser = await puppeteer.launch({
headless: false,
args: [
'--proxy-server=localhost:15500',
'--ignore-certificate-errors',
]
});
const page = await browser.newPage();
await page.goto('https://example.com');
// All requests will go through GlancePlaywright Integration
For Playwright:
const { chromium } = require('playwright');
const browser = await chromium.launch({
headless: false,
proxy: {
server: 'http://localhost:15500'
},
ignoreHTTPSErrors: true
});
const context = await browser.newContext();
const page = await context.newPage();
await page.goto('https://example.com');Selenium WebDriver
For Selenium:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument('--proxy-server=localhost:15500')
chrome_options.add_argument('--ignore-certificate-errors')
driver = webdriver.Chrome(options=chrome_options)
driver.get('https://example.com')Testing
Verify browser is using proxy:
- Launch browser with proxy configured
- Navigate to any HTTPS website
- Check Glance dashboard - requests should appear
- Verify URL and status code match
Troubleshooting
Proxy Not Working
- Check Browser Flags: Ensure
--proxy-serveris set correctly - Port Conflict: Verify Glance is running on port 15500
- System Proxy: Disable system proxy to avoid conflicts
Certificate Errors Still Showing
- Flag Missing: Ensure
--ignore-certificate-errorsis present - Extension Conflict: Some security extensions may block
- HSTS: Sites with HSTS may still show warnings
User Data Directory Issues
- Permission Denied: Use a writable directory like
/tmp/ - Directory in Use: Close other browser instances
- Disk Space: Ensure enough space for profile
Performance Issues
- Disable Extensions: Use clean profile with
--user-data-dir - GPU Acceleration: Add
--disable-gpuif having issues - Memory: Chrome with DevTools + Glance can use significant RAM
Production vs Development
| Use Case | Recommended Approach |
|---|---|
| Development | Auto-launch with --ignore-certificate-errors |
| Testing | System proxy + imported certificate |
| CI/CD | Headless with proxy flags |
| Production | Never use MITM proxy |
Best Practices
- Use Separate Profile: Always use
--user-data-dirto avoid affecting main browser - Don't Sign In: Don't sign into Google/Microsoft accounts in proxy-configured browser
- DevTools Open: Keep DevTools open for debugging
- Clear State: Delete user data directory between tests
Next Steps
- Client Configuration - Other platforms
- Mocking & Breakpoints - Modify browser traffic
- Scenarios - Record browser workflows