Skip to content

Latest commit

Β 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›‘οΈβœ¨ Bot Detection Machine πŸš€πŸ•΅οΈβ€β™€οΈ

A browser-based bot detection simulation that analyzes user behavior to determine whether a request comes from a bot or a human. This project simulates various behavioral signals and combines them using advanced heuristics for accurate bot detection.

πŸš€ Features

  • πŸ•΅οΈ User Agent Analysis: Detects bot-related identifiers in the user agent string.
  • πŸ–±οΈ Mouse Movement Analysis: Evaluates variability and natural randomness in mouse movements.
  • ⌨️ Keystroke Timing Analysis: Detects suspiciously consistent typing patterns.
  • πŸ•’ Click Interval Analysis: Reviews click timings to catch robotic precision.
  • πŸ“Š Advanced Heuristics: Combines multiple analyses for a more accurate detection score.
  • πŸ”΄ Live Simulation Mode: Simulate a continuous stream of requests in real time.

πŸ“‚ Project Structure

β”œβ”€β”€ πŸ“„ index.html             # Main HTML file
β”œβ”€β”€ πŸ“‚ src/
β”‚   β”œβ”€β”€ ⚑ utils.js          # Utility functions for simulating behavior
β”‚   β”œβ”€β”€ 🧠 detector.js       # BotDetector class with detection logic
β”‚   └── πŸ“˜ app.js            # Main script handling simulation and display

πŸ› οΈ Getting Started

Follow these steps to set up and run the project locally.

1. πŸ›œ Clone the Repository:

git clone https://github.com/MahmudGalib7/Bot-Detection-Machine.git
cd Bot-Detection-Machine

2. 🌐 Launch the Project:

  • 🟩 Option 1: Open index.html directly in your browser.
  • 🟨 Option 2: Use Visual Studio Code with the Live Server extension for an enhanced development experience.

3. 🎯 Simulate Requests:

The page loads with sample requests and displays detection results. To enable live request simulation, uncomment the following line in app.js:

simulateLiveRequests(10);

Adjust the number of requests as needed!

πŸ“˜ File Overview

  • πŸ—οΈ index.html: Main HTML structure, linking all scripts.
  • πŸ› οΈ src/utils.js: Functions to generate simulated behavior (mouse movements, keystrokes, clicks, IP addresses).
  • πŸ” src/detector.js: BotDetector class implementing various detection methods.
  • 🧩 src/app.js: Manages request creation, detection, and result display.

🀝 Contributing

Contributions are welcome! If you have ideas for improvements or spot bugs, feel free to open an issue or submit a pull request.

πŸ“ License

This project is provided as-is for educational purposes. Feel free to modify and build upon it.


If you’d like me to add installation requirements, usage examples, or more detailed explanations of the detection algorithms, just let me know! πŸš€βœ¨

About

A simple machine that can detect bot

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages