Welcome to the official technical specification and injection manual for the
Windows XP Simulator New Tab Extension. This companion extension bridges
your modern browser engine with the retro simulation at xpsimulator.com,
stripping frame restrictions, facilitating local filesystem injection, and bridging Chrome bookmarks.
Modern web browsers prevent third-party embedding through restrictive HTTP headers:
X-Frame-Options: SAMEORIGIN and Content-Security-Policy: frame-ancestors.
The companion extension utilizes Chrome Manifest V3 Declarative Net Request (DNR)
to execute deterministic, memory-safe header filtering exclusively for simulator frames.
- Rule Definition: Rules declared in
rules/rules.json intercept HTTP responses destined for tabs hosting xpsimulator.com.
- Headers Stripped:
x-frame-options, content-security-policy, frame-ancestors, cross-origin-embedder-policy, and cross-origin-opener-policy.
- Security Boundary: Modification rules are strictly conditioned on the initiator origin; external internet browsing outside the simulator remains untouched.
- Native Storage Sync: Chrome Bookmarks and Top Sites APIs read your favorite shortcuts and emit structured messages to generate authentic
.url desktop icons.
To install and initialize the companion extension in Developer Mode:
1. Clone the companion repository:
git clone https://github.com/elmehdi-khalda/xpsimulator-newtab.git
2. Open Chromium (Chrome, Brave, Edge, Gravity):
Navigate to: chrome://extensions
3. Toggle "Developer mode" in the top-right corner.
4. Click "Load unpacked" and select the extension directory:
"E:\xpsimulator\add-ons\chrome-no-games"
5. Open a New Tab: The Windows XP Simulator desktop boots instantly with
persistent storage and unblocked Internet Explorer 6 browsing.
Applications can be created manually via the Desktop Application Installer
or injected programmatically through the extension communication bus. Because declarative net
rules eliminate frame-ancestor blocks, embedded apps can communicate cross-origin without CORS violations.
Example: Programmatically Injecting an App Directory with Images & Embedded Scripts
// Automated Directory & App Injection Script
// Run via extension background script or content script bridge:
window.postMessage({
type: 'XP_INJECT_DIRECTORY_BUNDLE',
payload: {
// Target directory in virtual Windows XP filesystem
targetPath: 'C:\\Program Files\\MyCustomSuite',
createDesktopShortcut: true,
shortcutName: 'My Custom App.lnk',
// Directory file hierarchy:
files: [
{
name: 'index.html',
type: 'text/html',
content: `<!DOCTYPE html>
<html>
<head>
<meta name="xp-window-style" content="standard">
<meta name="xp-layer" content="normal">
<script src="/js/xp-sdk.js"></script>
<style>
body { font-family: Tahoma, sans-serif; background: #ECE9D8; padding: 12px; margin: 0; }
h2 { color: #0A246A; margin-top: 0; }
</style>
</head>
<body>
<h2>Embedded Suite</h2>
<img src="icon.png" width="32" height="32" />
<p>This application was injected with its assets automatically!</p>
</body>
</html>`
},
{
name: 'icon.png',
type: 'image/png',
// Injected base64 binary blob:
contentBase64: 'iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAA...'
},
{
name: 'config.json',
type: 'application/json',
content: JSON.stringify({ version: '1.0.0', author: 'El Mehdi Khalda' })
}
]
}
}, '*');
Standard browsers enforce the Same-Origin Policy (SOP). The companion extension solves this at two levels:
- Inbound Frame Embeds: Response headers that dictate iframe restrictions (
X-Frame-Options) are stripped dynamically, enabling Google, YouTube, and external web portals to render seamlessly inside IE6.
- Outbound Network Requests: Outbound fetches originating from simulated apps utilize the companion extension service worker proxy, bypassing client-side Access-Control-Allow-Origin limitations.
- Window Layering Control: Embedded applications can communicate directly with the Window Manager via
window.XPSim.window.setLayer('desktop' | 'below-dog' | 'above-dog' | 'normal' | 'modal').
Copyright (c) 2026 El Mehdi Khalda.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files, to deal in the Software without restriction, subject to standard
MIT conditions.
Source Code Repository Notice: The core source code repository
is maintained at
github.com/elmehdi-khalda/xpsimulator-sc.
Internal architectural enhancements, optimizations, and performance improvements are actively underway. Full source distribution will be released once performance standards are fulfilled.