MCPcopy Create free account
hub / github.com/Etesam913/xp-newtab

github.com/Etesam913/xp-newtab @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
78 symbols 216 edges 50 files 0 documented · 0% updated 6mo ago★ 756 open issues

Browse by type

Functions 78 Types & classes 0
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

✏️ XP-Newtab

An extension that customizes your new-tab page in the style of Windows XP.

https://github.com/Etesam913/xp-newtab/assets/55665282/82186bc0-a41b-480b-9635-264d1260995f

🔗 Links

  • Firefox: https://addons.mozilla.org/en-US/firefox/addon/xp-newtab/
  • Chrome: https://chrome.google.com/webstore/detail/xp-newtab/ncfmlogaelpnniflgipmnnglhfiifkke

✨ Features

  • Create draggable icons that redirect to websites when double clicked
  • Create draggable windows that can hold a plethora of components
  • Add search bars, images, videos, and text to windows.
  • Instantaneous saves

Development

Built with TypeScript, React 19, Vite 8, Zustand 5, Lexical, styled-components 6, and XP.css / 98.css / 7.css. Built-in wallpapers, cursors, icons, fonts, and themes are bundled for offline use.

npm ci
npm run dev

Requires Node.js 22.12 or newer; Node.js 24 is the development and CI version. Open http://127.0.0.1:3000. npm run build produces the browser extension in build/.

See CONTRIBUTING.md for testing and loading the extension, and AUDIT.md for the modernization findings and verification results.

Chrome Web Store release checklist

The extension build is ready for Chrome Web Store packaging. The Chrome extension version comes from public/manifest.json (1.2.4 at the time of writing); increase it above the version currently published before uploading an update. The package.json version is separate, but keeping both versions aligned avoids release confusion.

Run the release checks from the repository root:

npm ci
npm run format:check
npm test
npm run build
LIVE_YOUTUBE=1 npm run test:e2e -- --project=chromium
npx --yes web-ext@10.6.0 lint --source-dir build

Create a ZIP with manifest.json at the archive root. Do not ZIP the parent directory:

cd build
zip -r ../xp-newtab-<version>.zip .
cd ..

Before uploading, load build/ through chrome://extensions with Developer mode enabled and verify the new-tab page, saved data, YouTube iframe, icons, and browser console. The generated build/ directory is ignored by Git and is the upload artifact.

Core symbols most depended-on inside this repo

browse all functions →

Shape

Function 78

Languages

TypeScript100%

Modules by API surface

src/functions/helpers.js15 symbols
src/components/Window/helper.js7 symbols
src/components/KanbanBoard/index.jsx6 symbols
src/components/Editor/Plugins/ToolbarPlugins/BlockOptions.js6 symbols
src/components/SettingsWindow/Tabs.js5 symbols
src/components/Image/index.js5 symbols
src/components/Window/RenderWindowComponents.jsx3 symbols
src/components/KanbanBoard/KanbanItem.jsx3 symbols
src/components/TopBanner/index.jsx2 symbols
src/components/Today.js2 symbols
src/components/KanbanBoard/KanbanItemOverlay.jsx2 symbols
src/components/KanbanBoard/KanbanHeader.jsx2 symbols

For agents

$ claude mcp add xp-newtab \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page