TabOut adds intelligent "tab‑out" to LeetCode's editor. Forget arrow keys — just hit Tab and fly past ) ] } ' " > , ;
- Smart tab‑out for
(),[],{},' '," ",<>, commas and semicolons - Multiple cursor support
- Works across LeetCode: problems, contests, playground
- Lightweight: no UI clutter, minimal overhead
- Privacy-focused: no data collection, local processing only
- Clone this repository
- Run
npm install && npm run build - Open
chrome://extensions→ enable Developer mode - Click "Load unpacked" → select the
dist/folder
- Popup: Click the extension icon to quickly enable/disable
- Options: Right-click extension → Options for advanced settings
- No personal data or problem content is collected or transmitted
- Local processing only - all tab-out logic runs in your browser
- Minimal storage - only user preferences saved locally via Chrome sync
- Host (leetcode.com): Run only on LeetCode pages to access the editor context
- Scripting: Inject a small page script to access Monaco APIs
- Storage: Save minimal preferences (enable/disable, debug) in Chrome sync
- ActiveTab: Read the active tab's hostname in the popup to display site status (privacy-focused alternative to broad tabs permission)
We welcome contributions! To report bugs, fix issues, or add features, visit the Issues page. Please review our Contribution Guide for setup and contribution instructions.
- Firefox Support: MV3 compatibility for Firefox 109+
- More Platforms: Support for other coding platforms (GeeksForGeeks, takeuforward, HackerRank, CodeChef, etc.)
- Custom Delimiters: User-defined tab-out patterns
- Keyboard Shortcuts: Customizable key bindings
Special thanks to:
- TabOut (VS Code Extension) - The VS Code extension that inspired this project
- Monaco Editor - The powerful code editor that powers LeetCode and VS Code
- The open-source community for inspiration and feedback
MIT License - see LICENSE file for details.