# Willie IRC Bot

**Category:** Standalone_Bot
**Original Author:** Unknown

## Description
Willie is a standalone IRC bot written in Python that provides various commands for interacting with IRC channels, such as weather checks, spell checking, and more.

## Key Features
- Provides a wide range of commands for users to interact with the IRC channel.
- Manages user permissions and configurations.
- Supports external services like RSS feeds and web searches.
- Includes modules for logging, reminding, and managing channel information.

## File Analysis
- **conftest.py** — Lists files which should be ignored by pytest.
- **pytest_run.py** — Script for running pytest from the command line.
- **setup.py** — Setup script for packaging and installing Willie.
- **willie.py** — Main bot file, initializes the bot with core functionalities.
- **makerpm.py** — Script to create a RPM package for Willie.
- **make.bat** — Batch script for Sphinx documentation.
- **conf.py** — Configuration file for Sphinx documentation.
- **__init__.py** — Initialization module for Willie.
- **bot.py** — Core bot functionality, including IRC protocol handling and command processing.
- **config.py** — Configuration class for accessing the active Willie configuration file.
- **coretasks.py** — Contains core tasks and event handlers for the bot.
- **db.py** — Database interface for storing preferences and settings.
- **formatting.py** — Functions to apply IRC formatting to text.
- **irc.py** — IRC protocol handling utilities.
- **module.py** — Decorators for defining Willie callables.
- **test_tools.py** — Tools and classes for testing.
- **tools.py** — Miscellaneous tools and shortcuts for use in Willie modules.
- **web.py** — Web-related functions for interaction with web applications or websites.
- **admin.py** — Admin module for managing bot configurations.
- **adminchannel.py** — Module for managing channel permissions.
- **announce.py** — Sends an announcement to all channels the bot is in.
- **bugzilla.py** — Module for interacting with Bugzilla issue trackers.
- **calc.py** — Calculator module.
- **chanlogs.py** — Logs channel activities.
- **clock.py** — Clock module for displaying time information.
- **countdown.py** — Countdown module.
- **currency.py** — Currency exchange rate module.
- **dice.py** — Dice rolling module.
- **etymology.py** — Etymology lookup module.
- **find.py** — Spell checking and correction module.
- **find_updates.py** — Module for checking for updates to Willie.
- **github.py** — Github interaction module.
- **help.py** — Help and documentation module.
- **ip.py** — IP address lookup module.
- **ipython.py** — Interactive Python console module.
- **isup.py** — Website status checker module.
- **lmgtfy.py** — Module for suggesting Google searches.
- **meetbot.py** — Meeting logger module.
- **movie.py** — Movie information module.
- **ping.py** — Greeting and rude response module.
- **radio.py** — ShoutCAST radio module.
- **rand.py** — Random number generation module.
- **reddit-info.py** — Reddit interaction module.
- **reload.py** — Module reloader for Willie.
- **remind.py** — Reminder management module.
- **rss.py** — RSS feed handling module.
- **search.py** — Web search module.
- **seen.py** — Module to track when users were last seen.
- **spellcheck.py** — Spell checking and correction module.
- **tell.py** — Tell and ask module for sending private messages.
- **tld.py** — Top level domain information module.
- **translate.py** — Translation module.
- **unicode_info.py** — Codepoint lookup module.
- **units.py** — Unit conversion module.
- **uptime.py** — Uptime monitoring module.
- **url.py** — URL title retrieval module.
- **version.py** — Version checking and information module.
- **weather.py** — Weather check module.
- **wikipedia.py** — Wikipedia interaction module.