Any number of accounts
Add as many accounts per service as you need. Switching is just activating another live view; nothing is signed out to reach the other.
Features · v0.8.0
My Provider Dash Manager keeps every account signed in inside its own Chromium session, then gives you one deliberate place to switch, secure and keep track of them. Here is exactly what that includes.
01 · Accounts & sessions
Every account is a persist:<service>__<account> Chromium partition: separate cookies, localStorage, IndexedDB and cache. Accounts can never see each other's session.
Add as many accounts per service as you need. Switching is just activating another live view; nothing is signed out to reach the other.
Sign in once and stay signed in. The open-tab set is saved and restored; recent tabs come back warm, the rest asleep, and you land on Home.
Each live dashboard costs roughly 125 MB of private memory, so the app keeps a configurable number warm (default 5) and sleeps the rest. Slept tabs stay in the strip and resume on click.
Route one account through a proxy when a client or region requires it, with proper connection flushing when the setting changes.
Measured, not guessed
Private memory, the figure Task Manager reports. Roughly 125 MB for each live dashboard on a ~350 MB baseline.
02 · Layout & browsing
The left rail holds providers and their accounts. The top strip holds only open tabs. Account pages are rendered beneath that chrome, so Home and switching controls are always reachable.
KEYBOARD
03 · Built-in services
Each entry has its own dashboard and sign-in URLs, colour, multi-account policy and optional API token type. Login pages are verified to load inside an isolated partition and land on a host the credential guard trusts.
Google sign-in works inside the app. Third-party “Continue with Google” flows are different: Google blocks those in embedded browsers. The app's Browser button hands a stubborn flow to your system browser, and the rest of the app keeps working.
04 · Password manager
Saved logins belong to the account that typed them, not just the site. That is the difference between a password manager and a password manager that understands identities.
Logins typed inside an account tab are remembered for that account. Two accounts on the same service refill with different credentials.
Sign-in pages are recognised and filled when autofill is on; a manual fill action is always available from the account's rail actions.
Home → Saved logins → Manage logins groups every stored login by service, with delete. No password is ever shown.
When more than one login matches a site, the app asks instead of guessing. Your choice is remembered as that account's default, marked ★ in the manager.
Read installed Chromium browsers directly (Chrome, Edge, Brave, Vivaldi, Opera) or import a CSV from any browser, including Firefox. Re-importing updates changed passwords instead of keeping the stale one.
Encrypted at rest with Windows DPAPI. Passwords never reach the app's own UI process. A login is tied to the account and the service's own domains, so a password typed on a look-alike page is not captured and a saved password is not filled outside those domains.
05 · API status
Paste a read-only API token into an account and its Home card shows live status. The token field tells you which credential each service expects.
count + namesVercelcharges / payoutsread-onlyThese are the fields the app already reads through service APIs. No account data or token is shown on this site.
06 · Updates
The app checks on startup and hourly against the public release feed. A newer release downloads in the background and installs silently, with no wizard, the next time you close it.
The rail badge and Updates panel show the newest release and its notes.
The rail badge becomes Restart to update x.y.z. Press it to relaunch on the new version, or just close the app.
The update installs in place, without a wizard. Accounts, sessions and saved logins live outside the install and survive.
Prefer manual control? Turn Auto-update off in the Updates panel. Check, Download and Restart & update become explicit steps with release notes and progress. The interactive installer is only used for first installs.
07 · Ad-block & dark mode
Both run inside each account's own session, so you do not install or maintain a single extension. Both are built around what Electron can actually support.
Driven by EasyList: roughly 52,000 blocked hosts plus generic cosmetic rules, refreshed weekly, applied per account partition.
Powered by Dark Reader's own engine, driven directly rather than installed as an extension. One toggle on Home applies to every account tab.
08 · Extensibility
Any site gets its own rail row and fully isolated per-account sessions, exactly like a built-in service.
Drop a small JSON manifest into plugins/ — or install it from the UI — to define a service and, optionally, how to read its API for status cards.
Account creation is always manual and guided inside the account's session. Nothing signs up on your behalf, because automated signup violates several providers' acceptable-use policies.
09 · Provider terms
Multiple accounts are a technical capability, not a licence to ignore a provider's terms. The rail states the stance for each service.
| Provider stance | What the app shows |
|---|---|
| One account per person | GitHub and Railway: the rail says so. Use their organisations and workspaces instead. |
| Separate accounts tolerated, watch for abuse | Vercel, Netlify, Supabase, Cloudflare, Heroku and DigitalOcean. |
| Extra accounts treated as ordinary | The registries, GitLab, Fly.io, Neon, Google, Microsoft and the mail providers. |
| One account per business | Stripe expects one per business. The app does not change that. |
Ready when you are
37 services built in, any other site by URL, and sessions that stay signed in.