A browser extension that adds a "Zread" button to GitHub repository pages, providing quick access to Zread.ai documentation.
- Instant Access: One-click access to Zread.ai documentation
- Native Integration: Seamlessly matches GitHub's UI
- Fast & Lightweight: Minimal page impact
- Privacy First: No data collection, all processing local
- Theme Support: Works in light and dark modes
- SPA Compatible: Works with GitHub's client-side navigation
- Clone this repository
- Install dependencies:
npm install
- Build the extension:
npm run build
- Load in your browser:
- Chrome: Open
chrome://extensions, enable "Developer mode", click "Load unpacked", select.output/chrome-mv3 - Firefox: Open
about:debugging, click "Load Temporary Add-on", select any file in.output/firefox-mv2
- Chrome: Open
- Node.js 18+
- npm or yarn
npm install
npm run devnpm test # Run all tests
npm test -- --coverage # Run with coverage
npm run lint # Lint code
npm run format # Format codenpm run build # Build for Chrome
npm run build:firefox # Build for Firefox
npm run build:all # Build for all browsersgithub-zread-button/
├── entrypoints/
│ ├── content.ts # Main content script
│ └── content.css # Button styling
├── utils/
│ ├── url-transformer.ts # URL parsing & transformation
│ ├── github-detector.ts # Page detection logic
│ ├── button-injector.ts # Button creation & injection
│ └── navigation-handler.ts # SPA navigation handling
├── tests/
│ ├── unit/ # Unit tests
│ └── integration/ # Integration tests
├── public/
│ └── icon/ # Extension icons
└── wxt.config.ts # WXT configuration
This extension follows a modular architecture:
- URL Transformer: Extracts repository information from GitHub URLs
- GitHub Detector: Detects repository pages and finds navigation containers
- Button Injector: Creates and injects the Zread button into the DOM
- Navigation Handler: Monitors SPA navigation and re-injects the button
- Content Script: Orchestrates all modules
See specs/design.md for detailed architecture.
- Navigate to any GitHub repository
- Look for the "Zread" button in the repository navigation bar
- Click to open the repository documentation on Zread.ai
MIT License - see LICENSE file for details