Welcome to KopraCode
KopraCode is a compact Windows workspace built around three ideas: permanent web tabs for daily services, temporary browser windows for everything else, and small versioned HTML apps that behave like desktop tools.
A useful first ten minutes
- Open Tab Manager and add the web services you use every day.
- Open App Manager and explore the workspace, search, and dock controls.
- Pin one application or folder with the + button on the bottom taskbar.
- Open the globe button and try the temporary KopraCode Browser.
- Install Everything + es.exe if fast local search matters to you.
Help is added as an ordinary web tab on first use. You can delete it. To bring it back, open Tab Manager and choose Add Help tab; you can also open this page directly in the KopraCode Browser.
Installation and first launch
Run the signed KopraCode installer and follow the prompts. The setup package can install the Microsoft Edge WebView2 Runtime if it is not already available. WebView2 is the Windows component KopraCode uses to display websites and HTML apps.
Download KopraCode 2.0 — includes the 7-day trial
System requirements
- Windows 10 or Windows 11, 64-bit.
- Microsoft Edge WebView2 Runtime. The installer handles this when needed.
- An internet connection for online websites, AI services, license activation, Iconify search, and this handbook.
- No separate Python or .NET SDK installation is required for the packaged customer build.
Windows security prompts
KopraCode’s release files are digitally signed. Windows may show a User Account Control prompt because the installer adds a desktop application. Confirm that the publisher and product name are the expected KopraCode release before continuing.
Visual Studio, the .NET SDK, and Python are only needed to build KopraCode from source. They are not customer requirements for the installer.
First launch
The app creates a local profile for settings, website cookies, apps, icons, window positions, and license state. A seven-day trial starts automatically. The Help tab is added once; deleting it is remembered.
Interface tour
The main window has a compact native title area, a top web toolbar, a large active surface, and a native launcher at the bottom.
Window behavior
KopraCode remembers window locations and sizes. Small app windows, Explorer, the editor, image viewer, browser, and dialogs have visible resize edges and corner grips. Docked app windows can be hidden and shown without losing their current JavaScript state.
There is intentionally no Back/Forward history interface in the main workspace. Use the KopraCode Browser when you need free navigation.
Tabs and Tab Manager
A tab is a persistent destination such as Gmail, an AI assistant, an internal dashboard, or a localhost tool. Opening one returns to the same WebView and account session.
Add a custom tab
- Open Tab Manager.
- Enter a title and an HTTP or HTTPS address.
- Leave Auto-sync website favicon enabled unless you want a fixed custom icon.
- Optionally choose Show only the icon in the top bar; the full title remains available as a tooltip.
- Optionally enable Run Copied Code for an AI service.
- Choose Add tab. Open it once to capture its real favicon.
Ready-made AI tabs
Use the searchable assistant gallery for a one-click setup. Presets enable favicon capture and the code runner, so copied HTML can immediately be previewed in a native Render View.
Edit, reorder, disable, or remove
- Named tab width near the top of Tab Manager adjusts every labeled top tab from 60% to 120%. The default is 90%; icon-only tabs keep their compact size.
- Edit changes the title, URL, icon behavior, compact icon-only display, code runner, and per-tab Night Light.
- Up/Down controls the order of removable tabs.
- Disable hides a tab without deleting its configuration.
- Remove deletes a custom tab. It does not delete the website account or its external data.
- Built-in management tabs are protected but their visible name, icon, and icon-only display can be customized.
Restore the Help tab
Open Tab Manager and find the KopraCode Help card near the top. Choose Add Help tab. If Help is already present, the button shows that it is installed. Open online help uses the temporary KopraCode Browser instead.
The KopraCode Browser
Use the globe button for a site that does not deserve a permanent top tab. The browser shares KopraCode’s WebView2 profile, so accounts you add there are available to KopraCode web tabs without adding them to Chrome.
Browser controls
- Back, Forward, Reload, address entry, and Go support normal navigation.
- Add as tab promotes the current page into the fixed workspace.
- Focus Video removes KopraCode browser chrome and surrounding YouTube clutter while keeping the original watch, live, or Shorts page.
- Hide Shorts filters Shorts shelves, cards, and navigation entries on YouTube. The setting also applies to normal KopraCode tabs.
- Disable input prevents mouse movement from revealing video information and controls.
- Always on top keeps the compact browser above other windows.
Contained fullscreen
When a website requests fullscreen, KopraCode keeps the experience inside the browser window instead of taking over the entire monitor. The window remains movable and resizable, with a subtle outline and a small top area in Focus Video mode.
Leave Focus Video
Press Esc. KopraCode listens at the native window level, so the window does not need a second click before Escape works. The exit control also remains available in the focus bar.
Some creators block embedding. Focus Video keeps YouTube’s original page and strips distractions instead, so playback compatibility is better.
App Manager
An app is a complete single-file HTML document saved in KopraCode. Its HTML, CSS, and JavaScript travel together, while its persistent records are kept in an isolated data store.
Organize a growing library
- Switch between compact grid and list views.
- Search titles, descriptions, tasks, and tags.
- Group apps into workspaces and use tags for cross-workspace topics.
- Mark favorites and filter recent, docked, or archived items.
- Archive apps you no longer need without destroying their history.
Versions
Every save creates an immutable version. The latest version opens by default. An update from AI Studio or the native code editor creates a new version instead of silently replacing the previous source.
Open, dock, hide, and close
- Open creates a native Render View for the selected app.
- Dock adds the app to KopraCode’s app toolbar or native launcher workflow.
- Click a docked app again to hide it without resetting its live JavaScript state.
- Click its native X to close and dispose of the window. The next launch restores the latest saved size and location.
New from Paste
Copy a complete HTML document—or a Markdown ```html code block—then choose New from Paste. KopraCode uses the document’s <title> as the initial app name and saves version 1.
An app can suggest its first window size with <meta name="edgedeck-size" content="760x520">. After you move or resize it, your saved geometry takes priority.
AI App Studio
AI Studio lives inside App Manager. It asks a selected provider for a complete single-file HTML app designed for KopraCode’s dark, compact interface.
Create a new draft
- Open App Manager and start a new AI app draft.
- Describe the job, the information shown, and the controls you need.
- Choose the provider profile and model.
- Send the request. You may close the editor or click elsewhere; generation continues in the active App Manager session.
- Return to the draft to inspect the answer, preview its HTML, and create the app.
Update an existing app
Attach an app before prompting. AI Studio sends its current HTML as context and asks the provider to preserve useful behavior and data structure. When the result is good, choose Save as version.
Expected AI output
The built-in designer prompt requests a complete HTML document inside a closed html fence, with all CSS and JavaScript in the same file, a descriptive title, responsive layout, accessible controls, and the KopraCode app data API for persistence.
AI output can contain mistakes or unexpected network requests. Test controls and inspect the source before relying on an app for important information.
Provider profiles and model selection
You can keep several named profiles configured at once and switch during the same draft. A practical escalation order is local first, then a lower-cost cloud provider such as DeepSeek, then OpenAI for the hardest request.
Recommended three-profile setup
Local model discovery
For a local profile, choose Query models. KopraCode first tries an OpenAI-compatible /models endpoint and then Ollama’s /api/tags format. Select one of the returned installed models instead of typing its identifier.
Profile fields
- Base URL is the provider’s API endpoint, not its normal chat webpage.
- API key is required for most cloud services; Azure can use its
api-keyheader and local profiles can use no authentication. - Model must be available to the selected account or local server.
- Maximum output tokens should be high enough for a complete HTML document.
- System prompt contains KopraCode’s app-building rules and can be refined per profile.
Select another named profile and continue the same conversation. This makes the local → DeepSeek → OpenAI workflow quick and deliberate.
The bottom taskbar
The taskbar is native Windows UI. Websites and saved HTML apps cannot enumerate its pins or ask it to launch arbitrary targets.
Add and use pins
- Click + to pin an application, Start menu shortcut, folder, PowerShell, Command Prompt, or Windows Terminal.
- Drag an executable, shortcut, folder, or drive from Windows File Explorer onto the taskbar.
- Click a tracked app to launch it. Click again to bring it forward, or minimize it when it is already the foreground window.
- Unpinning never closes the application itself.
Quick Run
Hold Ctrl to reveal Run above the plus button. Enter a program, path, URL, or command; press Enter to launch or Esc to cancel.
Launcher sets
Hold Shift, Ctrl, Alt, Ctrl+Alt, or Ctrl+Shift to reveal separate pin banks. Add or drag items while a bank is visible. Mark an important pin Show in every launcher set from its context menu to make it global.
Right-click options
Launch or open the target, open a folder in a terminal, change launcher set, move it, customize its icon and label, apply a drive outline color, choose KopraCode Explorer or Windows File Explorer for a folder, or unpin it.
KopraCode Explorer
Choose the magnifying-glass button on the native taskbar, or open a pinned folder. Explorer works with the Windows filesystem directly without exposing broad filesystem access to HTML content.
Browsing
- Open drives and folders with familiar Windows icons.
- Click column headings to sort; click again to reverse the order.
- Right-click a file or folder to open its location in Windows File Explorer or start Command Prompt there.
- Folder and drive pins use KopraCode Explorer by default; change an individual pin in its context menu if you prefer Windows File Explorer.
Image viewer
Double-click BMP, GIF, ICO, JPEG, PNG, or TIFF images. Previous/Next, arrow keys, Page Up/Page Down, and the mouse wheel move through images in the folder. Filters show all images, the last hour, today, or the last seven days.
Search modes
Search globally or scope results to the current folder. Typing restarts the query after a short pause and cancels the previous query immediately. Results are limited to 500 items for a responsive interface.
Install Everything + es.exe
KopraCode Explorer uses the official Everything command-line interface for extremely fast filename search. The Everything desktop application builds and serves the local index; es.exe is the separate client KopraCode calls.
Installing Everything does not necessarily install es.exe. Everything must also be running when KopraCode searches.
Recommended setup
- Download the current x64 Everything installer from the official voidtools download page.
- Install and run Everything. Let it finish its initial index and, if appropriate for your PC, enable start at Windows sign-in.
- From the same official page, download the current ES x64 command-line zip.
- Extract
es.exeto one of the locations KopraCode checks below. - Open KopraCode Explorer and type a filename. If results appear immediately, setup is complete.
Where KopraCode looks for es.exe
- Beside
KopraCode.exe—the packaged KopraCode installer may place it here. %ProgramFiles%\Everythingor%ProgramFiles%\Everything 1.5a.%LOCALAPPDATA%\Everything.- Any directory on the Windows
PATH. - A custom location in
KOPRACODE_EVERYTHING_ES. The olderEDGEDECK_EVERYTHING_ESname is also accepted for compatibility.
Search syntax
Space-separated terms are matched independently against the full path and combined with AND. For example, AI Mu mp3 can match MP3 files below a folder named “AI Music.” Put a phrase in quotes when the words must remain together.
If no results appear
- Open Everything and confirm its normal search window returns results.
- Confirm you downloaded ES, not only the Everything installer.
- Confirm the executable is named
es.exeand is in one of the checked locations. - If ES reports exit code 8, its IPC connection could not find a running Everything instance.
See the official ES command-line interface guide for advanced syntax and options.
Run Copied Code
This workflow is ideal when an AI chat produces a small tool and you want to test it before adding it to your library.
- Ask an AI assistant for a complete single-file HTML document.
- Copy the entire document or its
htmlfenced code block. - Choose Run Copied Code in KopraCode’s toolbar.
- Test the temporary Render View. It is not saved yet.
- When satisfied, open App Manager and choose New from Paste to keep it.
Tabs added from the ready-made AI assistant gallery have the code runner enabled automatically. You can enable or disable it for any custom tab in Tab Manager.
The clipboard must contain a recognizable complete HTML document or a Markdown HTML code fence. Ordinary prose or partial JavaScript is rejected instead of being executed as a page.
Night Light
Night Light can reduce brightness, add warmth, and lower saturation on bright websites. It uses visual filtering; links, forms, video, mouse input, and keyboard input continue to work.
Global profile
Tab Manager’s global controls set brightness, warmth, and saturation. The global master switch temporarily disables filtering everywhere without deleting your values. Native app windows follow the global profile.
Website mode
- Use global settings applies one profile to every eligible website tab.
- Per-tab settings allows a bright dashboard to be dimmed more than a dark AI chat.
Per-tab values are preserved when global mode is selected, so you can return to them later.
Icons and appearance
Website favicons
New custom tabs default to automatic favicon sync. After the real site loads, WebView2’s resolved favicon is saved locally. Your typed icon remains the fallback before first load.
Icon Studio
Choose an offline Unicode symbol or search the online Iconify catalog. Icon Studio is available while customizing the protected App Manager and Tab Manager tabs, removable website tabs, saved HTML apps, and native taskbar pins, so the entire workspace can share one visual language. Selecting a custom result disables favicon sync so the chosen design remains fixed. Image colors can be inverted when a dark logo needs to appear light.
Native taskbar icons
Right-click a pin and choose Customize icon. You can search Iconify, select a local SVG/PNG/ICO/JPEG/BMP, assign a short label, and add an outline color. Drive-root pins automatically show their drive letter, and an outline rule can be applied to every folder on that drive.
The isolated app data API
Saved apps should use KopraCode’s API when their records must survive window closure. Each app has an isolated capability and cannot access another app’s records, provider credentials, Tab Manager, or App Manager.
const value = await window.edgedeck.data.get("key"); // stored value or null await window.edgedeck.data.set("key", { count: 1 }); const records = await window.edgedeck.data.list(); // { key: value, ... } await window.edgedeck.data.remove("key");Good practices for generated apps
- Store JSON-compatible values and use stable, descriptive keys.
get(key)returns the value directly, ornullfor a missing key.list()returns an object keyed by every saved key.- The API is injected into saved apps; temporary scratch previews intentionally do not receive storage access.
- Do not call management endpoints or assume access to the Windows filesystem.
- Keep migrations simple when changing a saved app’s data structure in a new version.
Each saved app has its own local hostname and browser origin. This separates localStorage, IndexedDB, and cookies in addition to KopraCode’s key/value capability.
Privacy, security, and local data
KopraCode keeps workspace configuration and app content on the Windows PC. External websites still follow their own privacy policies, and an AI prompt is sent to the provider profile you deliberately select.
Stored locally
- Tabs, apps, versions, workspaces, tags, app data, provider profiles, and most UI settings are stored in KopraCode’s local database.
- Launcher pins are stored by the native desktop shell in a separate local JSON file.
- Website sessions and cookies live in KopraCode’s WebView2 user-data profile.
- License credentials and state are protected for the current Windows user.
Upgraded development-era installations may continue using an existing %LOCALAPPDATA%\EdgeDeck profile so their apps and signed-in website sessions are not lost.
Security boundaries
Only KopraCode’s local management pages can request privileged actions such as clipboard reads or opening management windows. External sites cannot invoke that bridge. A saved app is restricted to its own data capability; scratch previews receive no management capability.
Back up your library
Close KopraCode before copying its local profile directory. The database contains your app source and versions, while launcher assets and the WebView2 profile contain separate settings and sessions. Treat a full profile backup as sensitive because it may include active website cookies.
Trial, activation, and offline use
KopraCode starts with a seven-day trial. The license control in the native taskbar shows current access and opens the activation window.
Activate
- Purchase a KopraCode license through the official checkout.
- Open the license window from the bottom taskbar.
- Enter the license details supplied with your purchase.
- Choose Activate while connected to the internet.
Normal validation
Successful activation is stored securely for the current Windows user. KopraCode renews quietly in the background. A valid license has a seven-day offline grace period after its last successful online validation, so short travel or connectivity interruptions do not immediately block the app.
Clock and machine changes
The license system detects significant clock rollback. Moving to another Windows user or computer may require a fresh activation because the protected local state is tied to the Windows profile and machine context.
Do not include a license key in screenshots, AI prompts, bug reports, or exported app content.
Troubleshooting
KopraCode starts after an “Unable to configure formatter” message
This was caused by the packaged Python backend trying to use terminal color detection without a normal terminal. Current builds disable that fragile logging path. Install the newest KopraCode 2.0 package if an older package shows the message.
A page is blank or WebView2 is missing
- Close KopraCode and run the WebView2 Runtime installer included by setup.
- Restart Windows if the runtime was updated while KopraCode was open.
- Confirm security software has not quarantined a signed KopraCode component.
Everything search shows no results
- Start Everything and confirm it has indexed your drives.
- Install the separate x64 ES download and make sure
es.exeis discoverable. - Test a simple filename without a folder scope.
- See Everything + es.exe setup.
A local AI model list is empty
- Start Ollama or LM Studio before querying models.
- Confirm the provider base URL points to the API server and port.
- Confirm at least one model is downloaded in the local service.
- Try the service’s OpenAI-compatible URL; KopraCode also falls back to Ollama’s tags endpoint.
Escape does not leave YouTube fullscreen
Make sure you are using a current build with native Escape handling. The contained browser should react without clicking the page again. The focus top bar also contains an exit control.
A generated app does not save data
- Confirm it is a saved App Manager app, not only a temporary scratch preview.
- Use
window.edgedeck.dataexactly as shown in the data API section. - Open the native code editor and check the browser console for JavaScript errors.
A website login is missing
KopraCode and Chrome do not share the same credential or cookie profile. Sign in once through the temporary KopraCode Browser; the same KopraCode WebView2 profile is shared with permanent web tabs.
A window is hard to resize
Move the pointer to an edge or the small lower-right resize grip. Current native popup windows use wider invisible hit areas around edges and corners. If these are absent, update to the latest build.
Quick reference
| Action | How |
|---|---|
| Temporary browsing | Choose the globe button |
| Leave Focus Video | Esc or the focus-bar exit control |
| Quick Run | Hold Ctrl at the bottom taskbar |
| Alternate launcher bank | Hold Shift, Ctrl, Alt, Ctrl+Alt, or Ctrl+Shift |
| Open KopraCode Explorer | Choose the taskbar magnifying glass |
| Preview clipboard HTML | Choose Run Copied Code |
| Keep clipboard HTML | App Manager → New from Paste |
| Restore this Help tab | Tab Manager → Add Help tab |
| Search this handbook | Press / |
Official companion downloads
For fast filesystem search, use only the official voidtools Everything and ES downloads. The official ES documentation explains advanced command-line search behavior.
Leave it as a top tab for quick reference, delete the tab and open it from Tab Manager only when needed, or bookmark https://www.kopracode.com/help/.
Try fewer words or a broader term such as “browser,” “apps,” or “license.”