Browse by type
https://github.com/Etesam913/xp-newtab/assets/55665282/82186bc0-a41b-480b-9635-264d1260995f
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.
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.
$ claude mcp add xp-newtab \
-- python -m otcore.mcp_server <graph>