Browse Any is a curated website discovery tool that lets users explore interesting corners of the internet across various categories including tools, games, art, news, and more. Press a button and discover something new!
- ๐ฒ Random Discovery: Explore curated websites from our database with a single click
- ๐ Categories: Browse by category (General, Tools, Games, Art, Funny, Sports, News)
- โญ Favorites: Save your favorite websites for quick access
- ๐ History: Navigate back and forth through your browsing history
- โจ๏ธ Keyboard Shortcuts: Power user controls for efficient navigation
- โฑ๏ธ Auto-Click Timer: Set automatic website discovery intervals (5s, 10s, 15s, 30s, 1m)
- ๐ Multi-language: Built-in Google Translate support for 100+ languages
- ๐ฑ Responsive Design: Works seamlessly on desktop and mobile devices
- ๐จ Modern UI: Beautiful glass-morphism design with smooth animations
- A web browser (Chrome, Firefox, Safari, Edge)
- A local web server (optional, for development)
-
Clone the repository:
git clone https://github.com/programmermunna/browseany.git cd browseany -
Open
index.htmlin your web browser- Double-click
index.htmlor - Right-click and "Open with" your browser
- Double-click
Using Python:
# Python 3
python -m http.server 8000
# Python 2
python -m SimpleHTTPServer 8000Using Node.js (http-server):
npx http-server -p 8000Using PHP:
php -S localhost:8000Then open http://localhost:8000 in your browser.
- Install the "Live Server" extension in VS Code
- Right-click on
index.html - Select "Open with Live Server"
browseany/
โโโ index.html # Main HTML file
โโโ app.js # Core JavaScript application logic
โโโ style.css # Custom styles and design tokens
โโโ filter.py # Python script to filter iframe-blocked URLs
โโโ DB/ # Database files with curated URLs
โ โโโ general.js
โ โโโ tools.js
โ โโโ games.js
โ โโโ art.js
โ โโโ funny.js
โ โโโ sports.js
โ โโโ news.js
โโโ Assets/ # Static assets (images, favicon)
โ โโโ bg.webp
โ โโโ browseany-favicon.png
โ โโโ thumbnail.webp
โโโ README.md # This file
-
Open the appropriate category file in the
DB/directory -
Add URLs to the array following the existing format:
const DB_GENERAL = [ "https://example.com", "https://another-site.com", // Add more URLs here ];
-
Save the file and refresh your browser
Some websites block iframe embedding. Use the provided Python script to filter these out:
# Install dependencies
pip install requests
# Filter all DB files
python filter.py
# Filter specific files
python filter.py general.js tools.jsThis script checks each URL for X-Frame-Options or Content-Security-Policy headers that would block iframe embedding and removes them from the database.
We welcome contributions from everyone! Here's how you can help:
- ๐ Add New Websites: Find interesting websites and add them to the appropriate category in the
DB/directory - ๐ Report Bugs: Open an issue describing the problem and steps to reproduce it
- ๐ก Suggest Features: Share your ideas for new features or improvements
- ๐ Improve Documentation: Help make this README and other documentation clearer
- ๐จ Design Improvements: Contribute UI/UX enhancements
- ๐ง Code Contributions: Fix bugs or implement new features
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature-name
- Make your changes
- Test thoroughly on different browsers and devices
- Commit your changes:
git commit -m "Add: brief description of your changes" - Push to your branch:
git push origin feature/your-feature-name
- Open a Pull Request
Use clear, descriptive commit messages:
Add: new category for music websitesFix: mobile responsive issues on favorites drawerUpdate: improved keyboard shortcuts documentationRefactor: optimized database loading logic
- JavaScript: Follow existing patterns in
app.js - CSS: Use existing design tokens in
style.css - HTML: Maintain semantic structure and accessibility
- Comments: Add clear comments for complex logic
Before submitting a PR, ensure:
- Works on Chrome, Firefox, Safari, and Edge
- Responsive on mobile and desktop
- No console errors
- Keyboard shortcuts function correctly
- Favorites system works
- History navigation works
- Auto-click timer functions properly
- Create a new file in
DB/(e.g.,music.js) - Follow the existing format:
const DB_MUSIC = [ "https://example-music-site.com", // Add more URLs ];
- Register the category in
app.js:const DB_DATA = { // ... existing categories music: { urls: DB_MUSIC, label: 'Music' } };
- Add the script tag in
index.html:<script src="DB/music.js"></script>
| Key | Action |
|---|---|
Space |
Load random website |
โ |
Go back in history |
โ |
Go forward in history |
F |
Toggle favorite |
O |
Open current site in new tab |
Esc |
Close favorites drawer |
0 |
Reset to home |
? |
Show keyboard shortcuts help |
- Frontend: Vanilla JavaScript, HTML5, CSS3
- Styling: Tailwind CSS (via CDN) + Custom CSS
- Fonts: Space Grotesk, Inter, JetBrains Mono
- Icons: Inline SVG icons
- Translation: Google Translate API
- URL Filtering: Python with requests library
This project is open source and available under the MIT License.
- All the creators of the amazing websites featured in our database
- The open-source community for tools and libraries used
- Contributors who help improve this project
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: Open an issue for direct contact
- User accounts and cloud sync for favorites
- Advanced filtering and search
- Website rating system
- Dark/Light mode toggle
- Browser extension
- API for developers
Made with โค๏ธ by the Open Source Community
โญ Star this repo โข ๐ Report issues โข ๐ Contribute