Dev URL Launcher — setup, build & maintenance¶
Personal Brave / Chrome / Firefox extension: grouped dev URLs and one-click setups (open multiple tabs for a workflow). Lives in the infra-devops platform repo alongside CI/CD tooling.
| Item | Path |
|---|---|
| Extension source | dev-url-launcher/ |
| URL catalog | dev-url-launcher/projects.json |
| Built output | dev-url-launcher/dist/ |
| Installed copy (Brave) | %LOCALAPPDATA%\dev-url-launcher-extension |
What it does¶
- Popup with collapsible groups (Portfolio, Platform, local projects, Personal)
- Single links — open one tab
- Setup chips — e.g. “Dev setup” opens localhost + Forgejo + Woodpecker + Plane together
- Search — filter by project name or URL
- Add link (footer) — personal overrides in browser only (
chrome.storage.local)
projects.json → build → dist/data/projects.json → extension popup
First-time setup (Windows)¶
1. Build¶
cd "C:\Users\anik0z\Documents\infra-devops\dev-url-launcher"
powershell -File scripts\build.ps1
With Node: npm test → npm run build
2. Install in Brave¶
python scripts\install_brave.py
Pin Dev URL Launcher from the toolbar puzzle icon.
3. Daily launch¶
| Method | Action |
|---|---|
| Batch file | dev-url-launcher\Launch-Dev-URLs.bat |
| Re-install | python scripts\install_brave.py |
Brave does not persist --load-extension across normal restarts without the batch file or install script.
4. Manual load (Chrome / Brave / Firefox)¶
- Build →
dist/ brave://extensions→ Developer mode → Load unpacked →dist
Maintenance¶
Change URLs (versioned)¶
Edit dev-url-launcher/projects.json, then:
powershell -File scripts\test.ps1
powershell -File scripts\build.ps1
python scripts\install_brave.py
New project group¶
Add a block to projects.json (id, label, links, optional setups) → test → build → install.
Personal / temporary URLs¶
Popup Add link — browser storage only, not in git.
Extension code¶
| File | Purpose |
|---|---|
popup.html / popup.js / popup.css |
Popup UI |
background.js |
Multi-tab open |
lib/catalog.js |
Catalog merge + search |
manifest.json |
Permissions, version |
Security¶
- URLs only in
projects.json— no passwords or API keys - Internal platform URLs stay in this private infra repo
- Personal use — load unpacked or
Launch-Dev-URLs.bat
Troubleshooting¶
| Problem | Fix |
|---|---|
| Extension missing after Brave restart | Launch-Dev-URLs.bat or install_brave.py |
| Changes not visible | Rebuild + reinstall / reload in brave://extensions |
| Wrong Plane URL | Use https://pm.rafaelgonzalezalbes.com (see platform README) |