# Willie IRC Bot

**Category:** Standalone_Bot
**Original Author:** Edward Powell

## Description
Willie is a simple, lightweight, open source IRC bot written in Python. It provides a variety of commands and features to automate tasks, provide information, and interact with users on IRC channels.

## Key Features
- Runs unattended as an IRC bot.
- Supports command triggers like `.cmd` or `!cmd`.
- Manages user access levels.
- Provides various modules for different functionalities such as weather, dictionary, calculator, and more.
- Can join and part channels based on configuration.
- Tracks user presence and sends reminders.

## File Analysis
- **setup.py** — Defines the bot's package structure and dependencies.
- **willie.py** — Main bot script handling initialization and command processing.
- **make.bat** — Batch file for Sphinx documentation build.
- **conf.py** — Configuration settings for Sphinx documentation generation.
- **__init__.py** — Initialization module for Willie core functionalities.
- **bot.py** — Core bot functionality including IRC protocol interactions.
- **config.py** — Bot configuration management.
- **coretasks.py** — Handles startup and shutdown tasks.
- **db.py** — Database abstraction layer.
- **irc.py** — IRC protocol handling.
- **tools.py** — Utility functions for various operations.
- **admin.py** — Admin commands for bot management.
- **ai.py** — Artificial intelligence module with basic responses.
- **bomb.py** — Prank game that op users after a set time.
- **bucket.py** — Module to store and retrieve facts.
- **calc.py** — Calculator functionality.
- **clock.py** — Time-related commands.
- **codepoints.py** — Unicode codepoint lookup.
- **countdown.py** — Countdown timer module.
- **dice.py** — Dice rolling functionality.
- **etymology.py** — Etymology lookup.
- **find.py** — Spell checking and word correction.
- **github.py** — GitHub API interaction.
- **info.py** — Documentation retrieval.
- **ip.py** — IP address and hostname lookups.
- **isup.py** — Website status checker.
- **meetbot.py** — Meeting logging module.
- **movie.py** — Movie information retrieval.
- **netsplit.py** — Logs netsplits in the debug channel.
- **nws.py** — National Weather Service alerts.
- **oblique.py** — Web services interface.
- **ping.py** — Greeting and rudeness commands.
- **quote.py** — Random quote generator.
- **radio.py** — ShoutCAST radio module.
- **rand.py** — Random number generation.
- **reddit-info.py** — Reddit post information retrieval.
- **reload.py** — Module reloader for admins.
- **remind.py** — Reminder system.
- **roulette.py** — Roulette game with a timer.
- **rss.py** — RSS feed management and display.
- **search.py** — Web search functionality.
- **seen.py** — Tracks user presence.
- **slap.py** — Slapping commands.
- **spellcheck.py** — Spell checking.
- **tell.py** — Tell and ask functionality.
- **tld.py** — Top-level domain information.
- **translate.py** — Translation services.
- **twitter.py** — Twitter API interaction.
- **url.py** — URL title retrieval.
- **version.py** — Displays bot version.
- **weather.py** — Weather information retrieval.
- **wikipedia.py** — Wikipedia lookup.
- **wiktionary.py** — Wiktionary definitions and translations.
- **xkcd.py** — XKCD comic retrieval.
- **youtube.py** — YouTube search functionality.