WebIn is a powerful, lightweight browser extension that provides instant access to your favorite websites and tools through a sleek, draggable overlay. Designed for productivity enthusiasts, it offers a beautiful, customizable dashboard that appears on demand with just a keyboard shortcut.
- 🎹 Quick Activation: Launch with
Cmd+Shift+Y(Mac) orCtrl+Shift+Y(Windows/Linux) - 📁 Smart Categories: Organize links into custom tabs (AI Tools, Coding, Social, etc.)
- 🔍 Universal Search: Instantly search across all your apps with real-time filtering
- ✨ High-Quality Icons: All app icons are loaded in HD quality for a crisp, professional look
- 🎨 Beautiful UI: Modern, glass-morphism design that works on any website
- ➕ Add Categories: Create unlimited custom categories for your workflow
- ✏️ Edit Apps: Modify app names, URLs, and icons
- 🗑️ Delete Mode: Easy category and app management
- 🔄 Reset Option: Restore default settings with one click
- 📱 Draggable & Resizable: Position and size the overlay to your preference
- 💾 Auto-Save: All changes persist automatically to local storage
- 🔒 Shadow DOM: Zero conflicts with website styles
- ⚡ Lightweight: No external dependencies, blazing-fast performance
-
Download or clone this repository:
git clone https://github.com/avdeshjadon/WebIn.git
-
Open Chrome and navigate to
chrome://extensions/ -
Enable Developer Mode (toggle in top-right corner)
-
Click "Load unpacked" and select the
WebInfolder -
Done! The WebIn icon will appear in your toolbar
- macOS:
Cmd + Shift + Y - Windows/Linux:
Ctrl + Shift + Y
To customize the shortcut, visit chrome://extensions/shortcuts and modify the WebIn binding.
- JavaScript (ES6+) - Core logic and UI rendering
- HTML5 & CSS3 - Shadow DOM styling
- Chrome Extension API (Manifest V3)
chrome.storage- Data persistencechrome.runtime- Background messagingchrome.scripting- Content injection
WebIn/
├── images/ # Extension icons (16x16 to 96x96)
│ ├── icon-16.png
│ ├── icon-32.png
│ ├── icon-48.png
│ └── icon-96.png
├── background.js # Service worker for icon fetching
├── inject.js # Main UI logic and state management
├── manifest.json # Extension configuration
├── LICENSE # MIT License
└── README.md # Documentation
| File | Purpose |
|---|---|
manifest.json |
Extension configuration, permissions, and metadata |
background.js |
Handles background tasks like fetching favicons |
inject.js |
Contains all UI logic, state management, and event handlers |
images/ |
Extension icons for browser toolbar and menu |
WebIn comes pre-configured with popular tools across multiple categories:
- AI Tools: ChatGPT, DeepSeek, Gemini, Grok
- LLM: Ollama
- Coding: LeetCode
- OpenSource: GitHub, Stack Overflow, SourceForge
- Social: YouTube, LinkedIn, WhatsApp, Facebook, Instagram, Twitter, Reddit
- Shopping: Amazon, Flipkart, Myntra, Meesho, Blinkit
- Database: Firebase, Cloudinary
- Model Hubs: CivitAI, Hugging Face
All categories and apps are fully customizable!
- Click the + button in the search bar
- Enter a category name
- Click "Add" to create
- Navigate to your desired category
- Click the + card at the end of the grid
- Fill in app name, URL, and optional icon URL
- Click "Add App"
- Hover over any app card
- Click the ⋮ menu button
- Modify details and click "Save"
- Categories: Click the trash icon, then click the category to delete
- Apps: Click the ⋮ menu on the app card, then "Delete App"
Simply start typing in the search bar to filter apps across all categories in real-time.
When adding or editing an app, you can provide a custom icon URL. If no icon is provided, WebIn automatically fetches the favicon from the website. For best results, use high-quality PNG or SVG images (minimum 128x128px recommended).
- Press
Enterwhile searching to open the first result - Use
Escto close the overlay (click backdrop)
Drag the bottom-right corner of the WebIn window to resize it. The extension remembers your layout preferences.
WebIn uses Shadow DOM to ensure complete style isolation. This prevents any CSS conflicts between the extension and host websites, guaranteeing consistent appearance everywhere.
The extension maintains state through two main objects:
tabs: Array of category namestabContent: Object mapping categories to their apps
State is automatically synchronized with chrome.storage.local on every change.
All user interactions (clicks, drags, searches) are handled through event listeners attached to dynamically created DOM elements, ensuring memory efficiency and responsive UI.
Contributions are welcome! Here's how you can help:
Open an issue with:
- Clear description of the bug
- Steps to reproduce
- Expected vs actual behavior
- Browser version and OS
Share your ideas by opening an issue tagged with enhancement.
- Fork the repository
- Create a feature branch:
git checkout -b feature/AmazingFeature - Commit your changes:
git commit -m 'Add AmazingFeature' - Push to the branch:
git push origin feature/AmazingFeature - Open a Pull Request
- Follow existing code style
- Test on multiple websites before submitting
- Keep functions small and focused
- Comment complex logic
- Update README if adding new features
- ✨ Initial release
- 🎨 HD icon support for all default apps
- 🔍 Real-time search functionality
- 📱 Draggable and resizable UI
- 💾 Local storage persistence
- 🎯 8 default categories with popular apps
- 🔧 Full CRUD operations for categories and apps
- None currently reported
This project is licensed under the MIT License. See the LICENSE file for full details.
MIT License
Copyright (c) 2025 Avdesh Jadon
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
Avdesh Jadon
- 🐙 GitHub: @avdeshjadon
- 💼 LinkedIn: Avdesh Jadon
- 📧 Email: theavdeshjadon@gmail.com
If you find WebIn useful, please consider:
- ⭐ Starring the repository
- 🐛 Reporting bugs and issues
- 💡 Suggesting new features
- 🤝 Contributing code
- 📢 Sharing with others
- Icon sources: Icons8, website favicons, and public CDNs
- Inspiration: Modern productivity tools and launcher applications
- Community: Thanks to all contributors and users
Made with ☕ and ❤️ by Avdesh Jadon
