Skip to content

programmermunna/browseany

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

13 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Browse Any

Discover Curated Websites Across the Internet

Live Demo Open Source Contributors

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!

โœจ Features

  • ๐ŸŽฒ 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

๐Ÿš€ Quick Setup

Prerequisites

  • A web browser (Chrome, Firefox, Safari, Edge)
  • A local web server (optional, for development)

Option 1: Direct File Opening (Simplest)

  1. Clone the repository:

    git clone https://github.com/programmermunna/browseany.git
    cd browseany
  2. Open index.html in your web browser

    • Double-click index.html or
    • Right-click and "Open with" your browser

Option 2: Using a Local Server (Recommended)

Using Python:

# Python 3
python -m http.server 8000

# Python 2
python -m SimpleHTTPServer 8000

Using Node.js (http-server):

npx http-server -p 8000

Using PHP:

php -S localhost:8000

Then open http://localhost:8000 in your browser.

Option 3: Using VS Code Live Server

  1. Install the "Live Server" extension in VS Code
  2. Right-click on index.html
  3. Select "Open with Live Server"

๐Ÿ› ๏ธ Development Setup

Project Structure

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

Adding New Websites

  1. Open the appropriate category file in the DB/ directory

  2. Add URLs to the array following the existing format:

    const DB_GENERAL = [
      "https://example.com",
      "https://another-site.com",
      // Add more URLs here
    ];
  3. Save the file and refresh your browser

Filtering Blocked URLs

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.js

This script checks each URL for X-Frame-Options or Content-Security-Policy headers that would block iframe embedding and removes them from the database.

๐Ÿค Contributing

We welcome contributions from everyone! Here's how you can help:

Ways to Contribute

  1. ๐ŸŒ Add New Websites: Find interesting websites and add them to the appropriate category in the DB/ directory
  2. ๐Ÿ› Report Bugs: Open an issue describing the problem and steps to reproduce it
  3. ๐Ÿ’ก Suggest Features: Share your ideas for new features or improvements
  4. ๐Ÿ“ Improve Documentation: Help make this README and other documentation clearer
  5. ๐ŸŽจ Design Improvements: Contribute UI/UX enhancements
  6. ๐Ÿ”ง Code Contributions: Fix bugs or implement new features

Getting Started

  1. Fork the repository
  2. Create a feature branch:
    git checkout -b feature/your-feature-name
  3. Make your changes
  4. Test thoroughly on different browsers and devices
  5. Commit your changes:
    git commit -m "Add: brief description of your changes"
  6. Push to your branch:
    git push origin feature/your-feature-name
  7. Open a Pull Request

Commit Message Guidelines

Use clear, descriptive commit messages:

  • Add: new category for music websites
  • Fix: mobile responsive issues on favorites drawer
  • Update: improved keyboard shortcuts documentation
  • Refactor: optimized database loading logic

Code Style

  • 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

Testing Checklist

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

Adding New Categories

  1. Create a new file in DB/ (e.g., music.js)
  2. Follow the existing format:
    const DB_MUSIC = [
      "https://example-music-site.com",
      // Add more URLs
    ];
  3. Register the category in app.js:
    const DB_DATA = {
      // ... existing categories
      music: { urls: DB_MUSIC, label: 'Music' }
    };
  4. Add the script tag in index.html:
    <script src="DB/music.js"></script>

๐ŸŽฏ Keyboard Shortcuts

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

๐ŸŒ Tech Stack

  • 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

๐Ÿ“„ License

This project is open source and available under the MIT License.

๐Ÿ™ Acknowledgments

  • 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

๐Ÿ“ž Support

๐Ÿ”ฎ Roadmap

  • 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

About

Random website is a tool for visit random website and it's open-source

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors