{"id":34675016,"url":"https://github.com/mustafaer/twitter-default-following-tab","last_synced_at":"2026-04-24T17:04:21.830Z","repository":{"id":329725218,"uuid":"1120507856","full_name":"mustafaer/twitter-default-following-tab","owner":"mustafaer","description":"A lightweight, privacy-focused browser extension that automatically switches to the \"Following\" tab when you open Twitter/X, helping you focus on chronological content from people you actually follow instead of the algorithmic \"For You\" feed.","archived":false,"fork":false,"pushed_at":"2025-12-24T18:17:54.000Z","size":113,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"development","last_synced_at":"2026-03-19T06:54:40.568Z","etag":null,"topics":["automation","browser-extension","chrome-extension","following-tab","good-first-issue","gpl-3","hacktoberfest","javascript","manifest-v3","open-source","performance","privacy-focused","productivity","social-media","twitter","x-com","zero-permissions"],"latest_commit_sha":null,"homepage":"https://chromewebstore.google.com/detail/twitter-default-following/afnfdobnmoffaiiboblgdcoeefobihbd","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mustafaer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","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},"funding":{"github":["mustafaer"]}},"created_at":"2025-12-21T11:21:21.000Z","updated_at":"2026-02-04T10:13:38.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/mustafaer/twitter-default-following-tab","commit_stats":null,"previous_names":["mustafaer/twitter-remove-for-you-tab"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/mustafaer/twitter-default-following-tab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mustafaer%2Ftwitter-default-following-tab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mustafaer%2Ftwitter-default-following-tab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mustafaer%2Ftwitter-default-following-tab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mustafaer%2Ftwitter-default-following-tab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mustafaer","download_url":"https://codeload.github.com/mustafaer/twitter-default-following-tab/tar.gz/refs/heads/development","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mustafaer%2Ftwitter-default-following-tab/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32232645,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"last_error":"SSL_read: 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":["automation","browser-extension","chrome-extension","following-tab","good-first-issue","gpl-3","hacktoberfest","javascript","manifest-v3","open-source","performance","privacy-focused","productivity","social-media","twitter","x-com","zero-permissions"],"created_at":"2025-12-24T20:23:04.267Z","updated_at":"2026-04-24T17:04:21.793Z","avatar_url":"https://github.com/mustafaer.png","language":"JavaScript","funding_links":["https://github.com/sponsors/mustafaer"],"categories":[],"sub_categories":[],"readme":"# Twitter Default Following Tab - Automatically Switch to Following Feed on Twitter/X\n\n**Enhance Your Twitter Experience | Chrome Extension for Twitter Following Tab | Skip For You Algorithm**\n\nA lightweight, privacy-focused browser extension that automatically switches to the \"Following\" tab when you open Twitter/X, helping you focus on chronological content from people you actually follow instead of the algorithmic \"For You\" feed.\n\n**Keywords:** Twitter extension, X.com extension, Following tab, Chrome extension, Browser extension, Twitter automation, Social media productivity, Chronological timeline, Twitter following feed, Skip for you tab, Twitter tools, Manifest V3\n\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n[![Chrome Web Store](https://img.shields.io/badge/Chrome-Extension-green.svg)](https://chromewebstore.google.com/detail/twitter-default-following/afnfdobnmoffaiiboblgdcoeefobihbd)\n[![GitHub stars](https://img.shields.io/github/stars/mustafaer/twitter-default-following-tab.svg?style=social)](https://github.com/mustafaer/twitter-default-following-tab/stargazers)\n[![GitHub issues](https://img.shields.io/github/issues/mustafaer/twitter-default-following-tab.svg)](https://github.com/mustafaer/twitter-default-following-tab/issues)\n\n## 🎯 Features\n\n### Why Use This Twitter Extension?\n\n**Tired of Twitter's \"For You\" algorithmic feed?** This extension automatically switches you to the chronological \"Following\" feed every time you open Twitter or X.com.\n\n- **🔄 Automatic Tab Switching** - Opens the \"Following\" tab by default instead of \"For You\" algorithmic feed\n- **✨ Seamless Transition** - Invisible switching - you never see the \"For You\" content flash\n- **🧠 Smart Content Detection** - Intelligently waits for tweets to actually load before displaying\n- **👤 Respects User Choice** - If you manually click \"For You\" tab, the extension won't interfere\n- **⚡ Adaptive Performance** - Fast on fiber/5G networks (~150ms), patient on slow 3G connections\n- **🌍 Language Independent** - Works with any Twitter language setting (English, Spanish, Japanese, etc.)\n- **🔒 Privacy-Focused** - Minimal data collection (only stores your tab preference setting locally) ([Privacy Policy](PRIVACY_POLICY.md))\n- **📱 SPA Compatible** - Works seamlessly with Twitter's single-page application architecture\n- **🆓 Free \u0026 Open Source** - GNU GPL v3 licensed, community-driven development\n\n### Perfect For:\n- Users who prefer chronological feeds over algorithmic recommendations\n- People who want to see content from followed accounts first\n- Anyone seeking more control over their Twitter/X experience\n- Users frustrated with the forced \"For You\" tab\n- Privacy-conscious users who want minimal-permission extensions\n\n## 🚀 Installation - How to Install Twitter Following Tab Extension\n\n### From Chrome Web Store (Recommended - Coming Soon)\nThe easiest way to install this Twitter extension for Chrome, Edge, Brave, and Opera.\n\n1. Visit the [Chrome Web Store page](https://chromewebstore.google.com/detail/twitter-default-following/afnfdobnmoffaiiboblgdcoeefobihbd)\n2. Click \"Add to Chrome\" or \"Add to Edge/Brave/Opera\"\n3. Enjoy your cleaner Twitter/X experience with automatic Following tab!\n\n### Manual Installation for Developers (Chrome, Edge, Brave, Opera)\n\n**For Chrome / Chromium-based browsers:**\n\n1. **Clone or Download** this Twitter extension:\n   ```bash\n   git clone https://github.com/mustafaer/twitter-default-following-tab.git\n   cd twitter-default-following-tab\n   ```\n\n2. **Open Chrome Extensions Page:**\n   - Chrome: Navigate to `chrome://extensions/`\n   - Edge: Navigate to `edge://extensions/`\n   - Brave: Navigate to `brave://extensions/`\n   - Opera: Navigate to `opera://extensions/`\n\n3. **Enable Developer Mode:**\n   - Toggle \"Developer mode\" switch in the top right corner\n\n4. **Load Extension:**\n   - Click \"Load unpacked\" button\n   - Select the project folder you downloaded\n   - The Twitter Following Tab extension is now installed! ✅\n\n5. **Test on Twitter:**\n   - Visit [twitter.com](https://twitter.com) or [x.com](https://x.com)\n   - The Following tab should automatically be selected\n\n## 🎬 How It Works - Technical Details\n\nThis Twitter automation extension uses intelligent content detection to ensure a smooth, seamless experience when switching from the \"For You\" algorithmic feed to the chronological \"Following\" timeline.\n\n### Technical Process:\n\n1. **Page Load Detection** - When you visit Twitter/X homepage\n2. **Content Hiding** - Temporarily hides \"For You\" content using CSS (tabs remain visible)\n3. **Automatic Tab Switch** - Programmatically clicks the \"Following\" tab\n4. **Smart Content Detection** - Checks every 50ms for tweets to load (maximum 2.5 seconds)\n5. **Seamless Display** - Shows content once Following tweets are fully loaded\n6. **User Interaction Respect** - Detects manual tab clicks and respects user choice (no auto-switch after manual selection)\n\n### Performance Metrics by Network Speed:\n\n| Network Type | Connection Speed | Transition Time | User Experience |\n|--------------|------------------|----------------|-----------------|\n| **Fiber/5G** | 100+ Mbps | ~150-200ms | ⚡ Instant, optimal speed |\n| **4G/ADSL** | 10-50 Mbps | ~300-500ms | ✅ Smooth transition |\n| **3G/Slow** | 1-5 Mbps | ~1000-2000ms | ✅ Waits for full content |\n| **Very Slow** | \u003c1 Mbps | 2500ms max (timeout) | ⚠️ Shows content anyway (safe fallback) |\n\n### Why This Approach?\n\n**Problem:** Simple tab-switching extensions show blank pages on slow connections because tweets haven't loaded yet.\n\n**Solution:** Our extension intelligently detects when Following feed tweets are actually loaded in the DOM before revealing content, ensuring you always see populated content, not loading spinners.\n\n**Technical Implementation:**\n- DOM MutationObserver for dynamic content changes\n- Position-based tab detection (language-agnostic)\n- User interaction detection (respects manual tab selections)\n- Debounced event handling for performance\n- History API interception for SPA navigation\n- Smart timeout protection (never hangs forever)\n\n## 🔧 Development\n\n### Prerequisites\n- Node.js (for development scripts)\n- Chrome/Chromium browser\n\n### Building\n```bash\n# Make build script executable\nchmod +x build.sh\n\n# Build the extension\n./build.sh\n```\n\nThis creates:\n- `build/` folder for testing\n- `twitter-default-following-tab.zip` for distribution\n\n### Debug Mode\nEnable debug logging in `content.js`:\n```javascript\nconst DEBUG = true; // Change from false to true\n```\n\nThen check browser console (F12) for detailed logs.\n\n## 📝 Configuration\n\nAll timing configurations are defined at the top of `content.js`:\n\n```javascript\nconst CONTENT_CHECK_INTERVAL = 50;      // ms between content checks\nconst MAX_CONTENT_WAIT_ATTEMPTS = 50;   // max 2.5 seconds wait\nconst DEBOUNCE_DELAY = 200;             // ms\nconst INITIAL_TAB_CHECK_DELAY = 100;    // ms\nconst PAGE_LOAD_CHECK_DELAY = 150;      // ms\nconst TRANSITION_END_DELAY = 100;       // ms\n```\n\n## 🤝 Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.\n\n### Development Guidelines\n1. Keep code simple and readable\n2. Add comments for complex logic\n3. Test on both fast and slow network conditions\n4. Maintain language-independent approach\n5. Follow existing code style\n\n## 💖 Support This Project\n\nIf you find this extension helpful, consider supporting its development:\n\n[![GitHub Sponsors](https://img.shields.io/badge/Sponsor-%E2%9D%A4-pink?logo=githubsponsors\u0026logoColor=white)](https://github.com/sponsors/mustafaer)\n\nYour support helps maintain and improve this extension:\n- 🐛 Bug fixes and improvements\n- ✨ New features development\n- 📚 Documentation updates\n- 🚀 Performance optimizations\n- 💬 Community support\n\n**Other ways to support:**\n- ⭐ Star this repository on GitHub\n- 🐛 Report bugs and suggest features\n- 🔄 Share with others who might find it useful\n- 📝 Write about it or create tutorials\n- 💻 Contribute code improvements\n\nEvery contribution, big or small, is appreciated! 🙏\n\n## 🔒 Privacy Policy\n\nThis extension is privacy-first by design. We collect **minimal data** - only your tab preference.\n\n**What We Store:**\n- ✅ Your tab preference (one simple setting: e.g., \"1\" for Following tab)\n- ✅ Stored locally in Chrome sync storage\n- ✅ Approximately 20 bytes of data\n- ✅ Format: `{\"defaultTab\": \"1\"}`\n\n**What We DON'T Collect:**\n- ❌ No personal information\n- ❌ No browsing history or analytics\n- ❌ No tracking of any kind\n- ❌ No external server communication\n- ❌ No tweets, messages, or profile data\n\n**Permissions (v2.0.0):**\n- `storage` - To save your tab preference locally\n- `scripting` - To detect available tabs and extract names\n- `activeTab` - To read current page when you open settings\n- Host permissions for `twitter.com` and `x.com`\n\nRead our complete [Privacy Policy](PRIVACY_POLICY.md) for full details.\n\n## 📄 License\n\nThis project is licensed under the GNU General Public License v3.0 - see the [LICENSE](LICENSE) file for details.\n\nThis means you can:\n- ✅ Use this software for any purpose\n- ✅ Study and modify the source code\n- ✅ Share copies of the software\n- ✅ Share your modifications\n\nWith the conditions:\n- 📋 Disclose source code\n- 📋 State changes you made\n- 📋 Use the same license (GPL v3)\n- 📋 Include copyright notice\n\n## 🐛 Bug Reports\n\nFound a bug? Please [open an issue](https://github.com/mustafaer/twitter-default-following-tab/issues) with:\n- Browser version\n- Steps to reproduce\n- Expected vs actual behavior\n- Screenshots if applicable\n\n## 💡 Feature Requests\n\nHave an idea? [Open an issue](https://github.com/mustafaer/twitter-default-following-tab/issues) with the \"enhancement\" label!\n\n## 🙏 Acknowledgments\n\n- Thanks to all contributors who help improve this extension\n- Inspired by users who prefer chronological feeds over algorithmic ones\n\n## 📊 Technical Details\n\n### Architecture (v2.0.0)\n- **Manifest V3**: Latest Chrome extension standard (future-proof)\n- **Content Script**: Runs on Twitter/X pages for tab switching\n- **Popup UI**: Dark mode interface with dynamic dropdown\n- **Options Page**: Full settings page with descriptions\n- **Chrome Storage API**: Saves your preference locally (synced via Chrome)\n- **Dynamic Tab Detection**: Intelligently discovers available tabs\n- **Structure-Based Extraction**: Uses HTML structure, not CSS classes (future-proof)\n\n### Permissions Used\n- `storage` - Save your tab preference\n- `scripting` - Detect tabs and extract names\n- `activeTab` - Read current page for settings\n- Host permissions for Twitter/X domains\n\n### Browser Compatibility\n- ✅ Chrome 88+ (tested and verified)\n- ✅ Edge 88+ (Chromium-based)\n- ✅ Brave (Chromium-based, privacy browser)\n- ✅ Opera (Chromium-based)\n- ⏳ Firefox (coming soon with Manifest V3 support)\n- ❌ Safari (not supported - different extension API)\n\n### Extension Technologies\n- **JavaScript ES6+** - Modern, efficient code\n- **DOM Manipulation** - Direct interaction with Twitter's interface\n- **MutationObserver API** - Monitors dynamic content changes\n- **History API** - Handles SPA navigation\n- **CSS Injection** - Seamless content transitions\n\n## ❓ Frequently Asked Questions (FAQ)\n\n### General Questions\n\n**Q: Can I choose which tab opens by default?**\nA: Yes! Version 2.0 lets you choose any tab - Following, Community tabs, or even \"For You\" if you want.\n\n**Q: How do I change my default tab?**\nA: Click the extension icon in your browser toolbar, select your preferred tab from the dropdown, and it saves automatically.\n\n**Q: How do I make Twitter open to Following tab by default?**\nA: Install this extension and select \"Tab 1 (Following)\" in the settings dropdown. That's it!\n\n**Q: Can I use this for Community tabs?**\nA: Absolutely! If you have community tabs (Tab 2, 3, 4...), they'll appear in the dropdown with their actual names.\n\n**Q: Does this work on both twitter.com and x.com?**\nA: Yes! The extension works on both domains seamlessly.\n\n**Q: What's new in version 2.0?**\nA: Dark mode UI, dropdown selector, dynamic tab detection, real tab names, and the ability to choose any tab as default!\n\n### Privacy \u0026 Security\n\n**Q: Does this extension collect my data?**\nA: We only store your tab preference (1 small setting) locally in your browser. No personal data, no tracking. Read our [Privacy Policy](PRIVACY_POLICY.md).\n\n**Q: What permissions does this Twitter extension need?**\nA: v2.0 requires:\n- `storage` - To save your tab preference\n- `scripting` - To detect available tabs\n- `activeTab` - To read current page for settings\n- Host permissions for Twitter/X domains\n\n**Q: Where is my setting stored?**\nA: In your browser's local Chrome storage. If you have Chrome sync enabled, it syncs across your devices (encrypted by Google).\n\n**Q: Is my data sent to any server?**\nA: No! Everything works locally. Your tab preference never leaves your browser (except via Chrome's optional sync feature).\n\n**Q: Is it safe to use?**\nA: Yes! It's open source (GNU GPL v3), you can inspect all code. No malicious behavior, no ads, no tracking.\n\n**Q: Can Twitter detect or ban me for using this?**\nA: No. This extension simply clicks the Following tab - something you could do manually. It's not against Twitter's ToS.\n\n### Technical Questions\n\n**Q: Does it work on mobile?**\nA: No. Browser extensions only work on desktop browsers (Chrome, Edge, Brave, Opera). Mobile browsers don't support extensions.\n\n**Q: Does it slow down Twitter?**\nA: No! It's very lightweight. In fact, on fast networks it completes in ~150-200ms - faster than manual clicking.\n\n**Q: What if Twitter changes their layout?**\nA: The extension uses position-based selection (resilient to changes), but major Twitter updates may temporarily break it. We'll update promptly if needed.\n\n**Q: Does it work with TweetDeck?**\nA: No, this extension is specifically for the main Twitter/X website (twitter.com and x.com).\n\n### Installation \u0026 Troubleshooting\n\n**Q: How do I install a Chrome extension manually?**\nA: See our [Installation Guide](#-installation---how-to-install-twitter-following-tab-extension) above for step-by-step instructions.\n\n**Q: The extension isn't working, what should I do?**\nA: 1) Make sure it's enabled in chrome://extensions/, 2) Refresh Twitter, 3) Check browser console (F12) for errors, 4) Report an issue on GitHub.\n\n**Q: Can I use this with other Twitter extensions?**\nA: Yes! It's designed to be compatible with other extensions.\n\n### Open Source \u0026 Development\n\n**Q: Is the code open source?**\nA: Yes! Licensed under GNU GPL v3. View, modify, and contribute at our [GitHub repository](https://github.com/mustafaer/twitter-default-following-tab).\n\n**Q: Can I contribute to development?**\nA: Absolutely! Check out our [Contributing Guide](CONTRIBUTING.md) for how to get started.\n\n**Q: How do I report bugs or request features?**\nA: Open an issue on our [GitHub Issues page](https://github.com/mustafaer/twitter-default-following-tab/issues).\n\n### Comparisons\n\n**Q: How is this different from other Twitter extensions?**\nA: Most extensions use fixed delays which cause blank pages on slow networks. We use smart content detection for guaranteed loaded content.\n\n**Q: Why not just bookmark twitter.com/home?**\nA: Twitter redirects all home page variations to the same URL with \"For You\" as default. This extension solves that.\n\n**Q: Is there a Firefox version?**\nA: Coming soon! We're waiting for Firefox's full Manifest V3 support.\n\n## 📞 Support\n\n- **Issues**: [GitHub Issues](https://github.com/mustafaer/twitter-default-following-tab/issues)\n- **Discussions**: [GitHub Discussions](https://github.com/mustafaer/twitter-default-following-tab/discussions)\n\n## ⭐ Star This Project\n\nIf you find this extension useful, please consider giving it a star on GitHub! It helps others discover the project.\n\n[![GitHub stars](https://img.shields.io/github/stars/mustafaer/twitter-default-following-tab.svg?style=social\u0026label=Star)](https://github.com/mustafaer/twitter-default-following-tab/stargazers)\n\n---\n\n## 🔍 Related Searches \u0026 Keywords\n\n**Popular Searches This Extension Solves:**\n- How to make Twitter default to Following tab\n- Twitter open Following tab automatically\n- Skip Twitter For You tab\n- Twitter chronological timeline extension\n- Twitter Following feed default\n- Chrome extension for Twitter automation\n- Disable Twitter For You tab\n- Twitter extension Following first\n- X.com Following tab extension\n- Twitter productivity tools\n- Social media chronological feed\n- Twitter extension no permissions\n- Privacy-focused Twitter extension\n- Open source Twitter tools\n\n**SEO Keywords:** Twitter extension, X extension, Following tab, Chrome extension, browser extension, Twitter automation, social media tools, productivity extension, chronological timeline, Twitter following feed, skip for you, Twitter tools, Manifest V3, privacy-focused, minimal permissions, open source, GPL-3, Twitter productivity, X.com tools, social network extension, Twitter customization, feed customization\n\n---\n\nMade with ❤️ by the open source community | Licensed under GNU GPL v3 | Privacy-focused • No tracking • Minimal data\n\n**#TwitterExtension #ChromeExtension #Productivity #OpenSource #Privacy #FollowingTab #XCom**\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmustafaer%2Ftwitter-default-following-tab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmustafaer%2Ftwitter-default-following-tab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmustafaer%2Ftwitter-default-following-tab/lists"}