{"id":49692801,"url":"https://github.com/itsrabei/math-copy-extension","last_synced_at":"2026-05-07T19:02:19.599Z","repository":{"id":324126896,"uuid":"1096083119","full_name":"itsrabei/math-copy-extension","owner":"itsrabei","description":"Browser extension for copying mathematical equations as MathML, LaTeX, Unicode, or AsciiMath","archived":false,"fork":false,"pushed_at":"2025-11-13T23:38:19.000Z","size":1191,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-14T01:14:03.413Z","etag":null,"topics":["browser-extension","chrome-extensions","katex","latex","latex-math","mathematics","mathematics-education","mathml","mathml-parser"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/itsrabei.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-13T23:16:53.000Z","updated_at":"2025-11-13T23:38:22.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/itsrabei/math-copy-extension","commit_stats":null,"previous_names":["itsrabei/math-copy-extension"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/itsrabei/math-copy-extension","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsrabei%2Fmath-copy-extension","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsrabei%2Fmath-copy-extension/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsrabei%2Fmath-copy-extension/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsrabei%2Fmath-copy-extension/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/itsrabei","download_url":"https://codeload.github.com/itsrabei/math-copy-extension/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/itsrabei%2Fmath-copy-extension/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32751758,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["browser-extension","chrome-extensions","katex","latex","latex-math","mathematics","mathematics-education","mathml","mathml-parser"],"created_at":"2026-05-07T19:02:16.456Z","updated_at":"2026-05-07T19:02:19.592Z","avatar_url":"https://github.com/itsrabei.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Math Copy Extension v1.0.0\r\n\r\nA powerful browser extension for copying mathematical equations in multiple formats, with MathML as the default for perfect MS Word integration.\r\n\r\n**Available on [Chrome Web Store(soon)](https://chrome.google.com/)** | [GitHub Repository](https://github.com/itsrabei/math-copy-extension)\r\n\r\n## Features\r\n\r\n### Core Functionality\r\n- **MathML as Default**: Optimized for MS Word compatibility\r\n- **Multiple Formats**: MathML, LaTeX, Unicode, and AsciiMath\r\n- **Universal Detection**: Works with MathJax, KaTeX, and native MathML\r\n- **Smart Selection**: Multi-select equations with Shift+Click\r\n- **Keyboard Shortcuts**: Quick access with Alt+M and Alt+Shift+M\r\n\r\n### Advanced Features\r\n- **Clipboard History**: Track and reuse copied equations\r\n- **Statistics**: Usage analytics and format preferences\r\n- **Right-Click Context Menu**: Quick format selection on equations\r\n- **Blocked Sites/Pages**: Disable extension on specific pages or sites\r\n- **Dark Mode**: Modern UI with theme support\r\n- **Accessibility**: Full keyboard navigation and screen reader support\r\n- **Export Options**: Save clipboard history as JSON\r\n\r\n### User Experience\r\n- **Hover Tooltips**: Visual feedback on math elements\r\n- **Visual States**: Clear indication of selection and copy status\r\n- **Responsive Design**: Works on all screen sizes\r\n- **Error Handling**: Graceful fallbacks and user feedback\r\n\r\n## Installation\r\n\r\n1. Download or clone this repository\r\n2. Open Chrome/Edge and go to `chrome://extensions/`\r\n3. Enable \"Developer mode\"\r\n4. Click \"Load unpacked\" and select the extension folder\r\n5. The extension icon will appear in your browser toolbar\r\n\r\n## Usage\r\n\r\n### Basic Copying\r\n1. Navigate to any webpage with mathematical equations\r\n2. Hover over a math equation to see the tooltip\r\n3. Click to copy as MathML (default format)\r\n4. Paste into MS Word or any compatible application\r\n\r\n### Multi-Selection\r\n1. Hold Shift and click multiple equations\r\n2. Use the popup to copy all selected equations\r\n3. Or use Ctrl+Shift+C keyboard shortcut\r\n\r\n### Format Options\r\n- **MathML**: Best for MS Word, PowerPoint, and web applications\r\n- **LaTeX**: Standard for academic papers and scientific documents\r\n- **Unicode**: Plain text with mathematical symbols\r\n- **AsciiMath**: Simple, lightweight format\r\n\r\n### Keyboard Shortcuts\r\n- `Alt+M`: Copy first math equation as MathML\r\n- `Alt+Shift+M`: Toggle between formats\r\n- `Ctrl+Shift+C`: Copy selected equations\r\n- `Ctrl+Shift+X`: Clear selection\r\n- `Escape`: Clear selection and hide tooltips\r\n\r\n## Configuration\r\n\r\nOpen the extension popup to configure:\r\n- **Output Format**: Choose default format (MathML recommended)\r\n- **Auto-copy**: Enable/disable automatic copying on click\r\n- **Multi-selection**: Enable/disable multi-select mode\r\n- **Tooltips**: Show/hide hover tooltips\r\n- **Dark Mode**: Toggle between light and dark themes\r\n- **Validation**: Enable MathML validation\r\n\r\n## Supported Math Libraries\r\n\r\n- **MathJax**: All versions and configurations\r\n- **KaTeX**: Inline and display math\r\n- **Native MathML**: Direct browser support\r\n- **Generic**: Fallback for custom implementations\r\n\r\n## Browser Compatibility\r\n\r\n- Chrome 88+\r\n- Edge 88+\r\n- Firefox 78+ (with minor limitations)\r\n- Safari 14+ (with minor limitations)\r\n\r\n## Development\r\n\r\n### Project Structure\r\n```\r\n├── manifest.json          # Extension configuration\r\n├── background.js          # Service worker\r\n├── content.js            # Content script\r\n├── content.css           # Content script styles\r\n├── popup.html            # Popup interface\r\n├── popup.js              # Popup logic\r\n├── popup.css             # Popup styles\r\n├── advanced.html         # Advanced settings page\r\n├── advanced.js           # Advanced settings logic\r\n├── icons/                # Extension icons (16, 32, 48, 128)\r\n├── .gitignore           # Git ignore rules\r\n├── LICENSE              # MIT License\r\n├── README.md            # This file\r\n```\r\n\r\n### Key Components\r\n\r\n#### Background Script (`background.js`)\r\n- Handles extension lifecycle\r\n- Manages settings and storage\r\n- Processes context menu actions\r\n- Tracks usage statistics\r\n\r\n#### Content Script (`content.js`)\r\n- Detects mathematical elements\r\n- Handles user interactions\r\n- Processes equation extraction\r\n- Manages clipboard operations\r\n\r\n#### Popup Interface (`popup.html/js/css`)\r\n- Settings configuration\r\n- Clipboard history management\r\n- Statistics display\r\n- Selection tools\r\n- Enable/disable controls\r\n\r\n#### Advanced Settings (`advanced.html/js`)\r\n- Detailed statistics view\r\n- Blocked sites/pages management\r\n- Data export functionality\r\n- Advanced configuration options\r\n\r\n### Building from Source\r\n\r\n1. Clone the repository\r\n2. No build process required - pure JavaScript\r\n3. Load as unpacked extension in browser\r\n4. Make changes and reload extension\r\n\r\n## Contributing\r\n\r\n1. Fork the repository\r\n2. Create a feature branch\r\n3. Make your changes\r\n4. Test thoroughly\r\n5. Submit a pull request\r\n\r\n## License\r\n\r\nMIT License - see LICENSE file for details\r\n\r\n## Changelog\r\n\r\n### v1.0.0 (Current)\r\n- **Right-click context menu**: Quick format selection directly on equations\r\n- **Blocked sites/pages management**: Control where the extension is active\r\n- **MathJax v2/v3 support**: Proper integration with official MathJax APIs\r\n- **Enhanced equation detection**: Improved handling of KaTeX, MathJax, and native MathML\r\n- **Clipboard history**: Track and reuse copied equations\r\n- **Usage statistics**: Analytics and format preferences\r\n- **Multi-selection**: Select and copy multiple equations\r\n- **Keyboard shortcuts**: Quick access with Alt+M, Alt+Shift+M, etc.\r\n- **Dark mode**: Modern UI with theme support\r\n- **Comprehensive error handling**: Graceful fallbacks and user feedback\r\n- **Accessibility**: Full keyboard navigation and screen reader support\r\n\r\n## Download\r\n\r\n### Chrome Web Store\r\n[![Available on Chrome Web Store (soon)](https://img.shields.io/badge/Chrome%20Web%20Store-Available-blue)](https://chrome.google.com/webstore/)\r\n[Add to Chrome](https://chrome.google.com/webstore/detail/) - Install from Chrome Web Store\r\n\r\n### Manual Installation\r\n1. Download or clone this repository\r\n2. Open Chrome/Edge and go to `chrome://extensions/`\r\n3. Enable \"Developer mode\"\r\n4. Click \"Load unpacked\" and select the extension folder\r\n5. The extension icon will appear in your browser toolbar\r\n\r\n## Privacy \u0026 Data Collection\r\n\r\n**We do not collect any personal information.**\r\n\r\nThis extension operates entirely locally:\r\n- **No data transmission**: All data stays on your device\r\n- **No tracking**: We don't track your browsing activity\r\n- **No analytics**: We don't send usage data to any servers\r\n- **No external connections**: The extension works completely offline except for accessing web pages with math equations\r\n- **Local storage only**: Settings, history, and statistics are stored only on your device using Chrome's local storage API\r\n- **No cookies**: We don't use cookies or tracking technologies\r\n\r\nYour clipboard history and usage statistics are stored locally in your browser and never leave your device. You can clear this data at any time through the extension's advanced settings.\r\n\r\n## Support\r\n\r\n- **Issues**: Report bugs and request features on GitHub\r\n- **Documentation**: Check the help section in the popup\r\n- **Community**: Join discussions in GitHub Discussions\r\n\r\n## Acknowledgments\r\n\r\n- MathJax team for excellent math rendering\r\n- KaTeX team for fast math typesetting\r\n- W3C for MathML specification\r\n- All contributors and testers\r\n\r\n---\r\n\r\nMade with ❤️ for the mathematical community by Tefo\r\n\r\n\r\n\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsrabei%2Fmath-copy-extension","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fitsrabei%2Fmath-copy-extension","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fitsrabei%2Fmath-copy-extension/lists"}