Exchange Control Center
Simple installation and deployment guide
Windows · Selectable background update · 15 November 2026
1. Find your files
Your ready-to-use folder is D:\ecc-terminal-theme\updated. If it exists, use it directly.
If you are installing from the ZIP elsewhere:
- Right-click ECC-Selectable-Background-Update.zip and choose Extract All.
- Choose a new, empty folder, such as D:\ECC-Background-Update.
- Extract and open it. You should see
README.md,web, andInstall-ECCWindowsTerminalThemes.ps1together. - Replace
D:\ecc-terminal-theme\updatedin the commands below with your chosen folder.
Original files: files outside updated were left untouched. Reference copies are also in updated\originals. Run the installer inside updated; the parent folder contains the older version.
| What you want | What you need |
|---|---|
| Open the dashboard | Edge or Chrome |
| Install terminal themes | Windows Terminal and PowerShell 7 or later |
| Use a local web address | Python, optional |
| Run browser tests | Node.js, npm, and Microsoft Edge, optional |
Normal installation does not need an administrator window. The dashboard displays sample data; this package does not connect to Microsoft 365.
2. Open the dashboard — easiest method
- Open File Explorer.
- Paste D:\ecc-terminal-theme\updated\web into the address bar and press Enter.
- Double-click index.html. Choose Edge or Chrome if asked.
- Select Dashboard settings in the dashboard navigation. On narrow screens, scroll the navigation sideways if needed.
- Under Appearance, choose a Colour theme.
- Change Force darkest colour as background using the table below.
- Refresh the page to check that the selected theme and checkbox were saved.
| Choice | Result |
|---|---|
| Checked — default | Darkest available colour in the selected scheme |
| Unchecked | The selected scheme's supplied background |
Both changes apply immediately and save automatically. You do not need Save preferences for these two controls.
Use the same browser and file location. Private windows, moving the files, and clearing browser storage may reset preferences. If saving is unreliable for a local HTML file, use section 3.
Quick check
- Select ECC | Superstar Sticker Party.
- Uncheck the box: the displayed background should be #110A23.
- Check it: the background should change to #0B0617.
- Switch themes: the new theme should use the current checkbox choice immediately.
3. Optional: use a local web address
Skip this section if opening index.html works for you.
- Open Windows Terminal or PowerShell and go to the folder:
Set-Location -LiteralPath 'D:\ecc-terminal-theme\updated'
- Check for Python:
python --version
If unavailable, use section 2 instead.
- Start the local server:
python -m http.server 8765 --bind 127.0.0.1 --directory web
- Leave the window open and visit Open local dashboard.
- Change the theme and checkbox, then refresh to check they were saved.
- Stop the server by pressing Ctrl+C in its window.
This server is accessible only from this computer. Keep using the same address and port to retain the same browser preference. It starts manually; no background service is installed.
4. Install the Windows Terminal themes
A. Open PowerShell 7
Open Windows Terminal, then enter:
pwsh
Check the version:
$PSVersionTable.PSVersion
The major version must be 7 or higher. Windows PowerShell 5.1 cannot run this installer. If pwsh is unavailable, install PowerShell 7 before continuing. The web dashboard does not require it.
B. Open the updated folder
Set-Location -LiteralPath 'D:\ecc-terminal-theme\updated'
Get-Item .\Install-ECCWindowsTerminalThemes.ps1, .\ECC-Windows-Terminal-Color-Schemes.json
Both files should be listed. Keep them together.
C. Preview the installation
.\Install-ECCWindowsTerminalThemes.ps1 -WhatIf
This shows proposed changes without changing settings or creating a backup. Preview mode uses the darkest-colour default and does not ask the background question. If settings cannot be found, or several files are found, use section 6.
D. Install
.\Install-ECCWindowsTerminalThemes.ps1
When asked:
Force darkest colour as background? [Y/n]
- Press Enter, or type y, for the darkest available scheme colour.
- Type n and press Enter for supplied backgrounds.
- Other answers repeat the question.
Before changing settings, the installer creates a backup beside your Terminal settings.json and prints its path. No changes needed means the selected result is already installed; no new backup is needed.
E. Activate a theme
Installing adds the schemes; it does not select one for your profile.
- Open Settings in Windows Terminal.
- Under Profiles, select the profile you use, such as PowerShell.
- Open Appearance.
- Under Color scheme, select a name beginning with ECC |.
- Select Save.
- Open a new tab with that profile if the change is not visible immediately.
5. Change the background choice later
Run these from the updated folder in PowerShell 7.
Darkest backgrounds, without questions:
.\Install-ECCWindowsTerminalThemes.ps1 -NonInteractive
Supplied backgrounds, without questions:
.\Install-ECCWindowsTerminalThemes.ps1 -ForceDarkestBackground:$false
Explicitly enable darkest backgrounds, without questions:
.\Install-ECCWindowsTerminalThemes.ps1 -ForceDarkestBackground:$true
Preview supplied backgrounds before applying them:
.\Install-ECCWindowsTerminalThemes.ps1 -ForceDarkestBackground:$false -WhatIf
Rerunning updates matching ECC scheme backgrounds. Other scheme colours and custom properties are kept. Unrelated schemes, profiles, keybindings, and other settings are preserved. No duplicate schemes are added.
The terminal choice is stored in its scheme backgrounds, independently of the browser checkbox.
6. Choose the Terminal settings file manually
Use this when automatic detection fails or finds several files.
- In Windows Terminal, open Settings → Open JSON file.
- Find the full path of the opened file using your editor's file information or Copy Path feature.
- Replace the example path below with that actual path and preview:
.\Install-ECCWindowsTerminalThemes.ps1 -SettingsPath 'C:\YOUR\TERMINAL\settings.json' -WhatIf
- Check the preview identifies the correct file, then install:
.\Install-ECCWindowsTerminalThemes.ps1 -SettingsPath 'C:\YOUR\TERMINAL\settings.json'
The example path is a placeholder. Keep quotes around paths, especially those containing spaces.
7. Restore your Terminal backup
Restoring a backup restores all Terminal settings to their state in that backup. To change only the background choice, use section 5 instead.
- Find the backup path printed by the installer. Backups are beside
settings.json, with names likesettings.json.backup-20261115-120000-a1b2c3.json. - Choose the backup from immediately before the installation you want to undo.
- Close any Terminal Settings editor so it does not save over the restored file.
- Replace both example paths below and copy the backup over your settings:
Copy-Item -LiteralPath 'C:\YOUR\TERMINAL\settings.json.backup-20261115-120000-a1b2c3.json' -Destination 'C:\YOUR\TERMINAL\settings.json' -Force
- Open a new Terminal tab and check its appearance.
8. Common problems
| Problem | What to do |
|---|---|
| Scheme file does not exist | Use updated; keep the installer and colour JSON together |
| Multiple settings files found | Follow section 6 and supply -SettingsPath |
| PowerShell version error | Run pwsh, then confirm version 7 or later |
| Scripts are blocked | Read the error. For a reviewed downloaded script, check Properties → Unblock, if shown. Organisation policy may require your administrator |
| Terminal looks unchanged | Select an ECC scheme in the correct profile's Appearance settings |
| Checkbox does not save | Use the same browser/address; try section 3 without private browsing |
| Both choices look identical | The supplied background may already be that scheme's darkest colour |
| Difference looks small | Check the displayed hex value; some colours are close together |
| Local web address fails | Keep the Python window open and check it for errors |
| Port 8765 already in use | Use 8766 in the server command and browser address; it has its own saved preference |
9. Optional verification
You do not need tests or developer tools to use the dashboard or install themes.
From updated, run the installer tests:
pwsh -NoProfile -File .\tests\Test-Installer.ps1
Expected: PASS: 33 installer assertions. They use temporary fixtures, never live Terminal settings. One intentionally invalid fixture prints an error before PASS; that rejection is expected.
With Node.js, npm, and Microsoft Edge installed, run browser tests:
npm install
npm run test:web
Expected: PASS: 66 web assertions. Existing logs and screenshots are in tests. The reference section below describes using a different Chromium browser.
10. Deployment scope and preserved settings
- This is a local preview and per-user Terminal installation. Production IIS hosting, HTTPS, authentication, Microsoft 365 connections, and automatic collectors are not configured.
- The recovered prototype's pages, sample content, navigation, and exports are retained.
- The new theme preference uses separate browser storage and does not overwrite existing dashboard settings storage.
- This setting saves the theme and background choice; it does not make every other prototype control persistent.
- Toggling the background keeps your current custom accent on that page. Selecting another theme applies its accent.
Technical reference and build provenance
This update is built from the locally recovered Exchange Control Center HTML
prototype (24 October 2026) and existing ECC terminal installer. It is not a
recovered copy of the missing consolidated v0.3 sandbox. Original files remain
unchanged outside this updated folder.
Web dashboard
Open web/index.html, then Dashboard settings → Appearance.
- Select a colour theme, then check or uncheck Force darkest colour as background.
- The checkbox defaults to checked. Both changes take effect immediately and
save automatically in browser local storage, independently of the existing
Save preferences control. Reloading restores both the theme and checkbox.
- Unchecking restores the selected theme's supplied background. Checking selects
its lowest WCAG relative-luminance colour. Theme definitions are never mutated.
- All 10 supplied ECC schemes are included, plus Tokyo Night and the original
prototype appearance. Tokyo Night was added using its standard colour values;
its definition from the unavailable v0.3 build could not be recovered.
- Background changes preserve a custom accent colour on the current page.
Other prototype controls, sample records, navigation and exports are retained.
- If browser storage is blocked, the control still works; a message explains
that the preference cannot be saved. Use a consistent browser and URL for persistence.
For a stable local address, run python -m http.server 8765 --bind 127.0.0.1 --directory web
from this folder and visit http://127.0.0.1:8765/ . No network service is required
when opening the HTML file directly.
Terminal installer (PowerShell 7+)
Run from this folder:
# Interactive; Enter means Yes. Answer n or no for supplied backgrounds.
.\Install-ECCWindowsTerminalThemes.ps1 -SettingsPath 'C:\path\to\settings.json'
# Unattended, darkest available colour (default).
.\Install-ECCWindowsTerminalThemes.ps1 -SettingsPath 'C:\path\to\settings.json' -NonInteractive
# Unattended, supplied background; explicit booleans suppress the prompt.
.\Install-ECCWindowsTerminalThemes.ps1 -SettingsPath 'C:\path\to\settings.json' -ForceDarkestBackground:$false
# Preview only; never prompts or writes backups/settings.
.\Install-ECCWindowsTerminalThemes.ps1 -SettingsPath 'C:\path\to\settings.json' -ForceDarkestBackground:$true -WhatIf
Omit SettingsPath to use the existing automatic Terminal settings discovery.
An explicit boolean overrides NonInteractive's default. An invalid prompt answer
asks again. Rerun with the opposite setting to change already installed ECC
backgrounds; all their other custom colours stay intact. Schemes with matching
source names are updated, unrelated schemes and active profiles are preserved.
This installer records the choice in the installed backgrounds, without adding
an unsupported preference property to Windows Terminal settings.
The installer preserves the JSONC text outside targeted background strings and
new scheme insertions, validates the merged JSON, makes a timestamped backup,
and atomically replaces the settings file. No changes means no new backup.
An existing File.Replace null-argument problem was also corrected for PowerShell 7.
Available palette limitation
The source terminal JSON already pinned its backgrounds using the original image
palettes. Those images' original palette JSON and earlier unpinned backgrounds
are unavailable. This update therefore treats each supplied background as the
unchecked baseline, and considers all available scheme colours—including derived
ANSI colours—when checked. The original JSON is unchanged. For example, Superstar
Sticker Party switches between supplied #110A23 and darkest available #0B0617.
Some schemes may have the same background for both choices.
Tests
pwsh -NoProfile -File .\tests\Test-Installer.ps1
npm install
npm run test:web
The web suite uses installed Microsoft Edge by default. To use another Chromium
browser, set ECC_TEST_BROWSER to its executable path. The delivered results were
produced using local Chromium. Browser dependencies are not included in the ZIP.
Installer tests use temporary fixture settings only, never live Terminal settings.
They cover both choices, prompt answers/default, unattended default, reruns,
backups, WhatIf, JSONC comments/trailing commas, invalid input, duplicate prevention,
and preservation of profiles and other colours. The browser suite covers every
theme in both modes, reload persistence, checkbox state, storage failures,
unrelated preferences, and desktop/mobile screenshots. Results and screenshots
are under tests.