Skip to main content

Simple and extensible IRC bot

Project description

version build issues coverage-status license

Introduction

Sopel is a simple, lightweight, open source, easy-to-use IRC Utility bot, written in Python. It’s designed to be easy to use, run and extend.

Installation

Latest stable release

On most systems where you can run Python, the best way to install Sopel is to install pip and then pip install sopel.

Arch users can install the sopel package from the [community] repository, though new versions might take slightly longer to become available.

Failing both of those options, you can grab the latest tarball from GitHub and follow the steps for installing from the latest source below.

Latest source

First, either clone the repository with git clone https://github.com/sopel-irc/sopel.git or download a source archive from GitHub.

Note: Sopel requires Python 3.8+ to run.

In the source directory (whether cloned or from the tarball) run pip install -e .. You can then run sopel to configure and start the bot.

Database support

Sopel leverages SQLAlchemy to support the following database types: SQLite, MySQL, PostgreSQL, MSSQL, Oracle, Firebird, and Sybase. By default Sopel will use a SQLite database in the current configuration directory, but alternative databases can be configured with the following config options: db_type, db_filename (SQLite only), db_driver, db_user, db_pass, db_host, db_port, and db_name. You will need to manually install any packages (system or pip) needed to make your chosen database work.

Note: Plugins not updated since Sopel 7.0 was released might have problems with database types other than SQLite (but many will work just fine).

Adding plugins

The easiest place to put new plugins is in ~/.sopel/plugins. Some newer plugins are installable as packages; search PyPI for these. Many more plugins written by other users can be found using your favorite search engine.

Some older, unmaintained plugins are available in the sopel-extras repository, but of course you can also write your own. A tutorial for creating new plugins is available on Sopel’s website. API documentation can be found online at https://sopel.chat/docs/, or you can create a local version by running make docs.

Further documentation

The official website includes such valuable information as a full listing of built-in commands, tutorials, API documentation, and other usage information.

Questions?

Join us in #sopel on Libera Chat.

Donations

We’re thrilled that you want to support the project!

You can sponsor Sopel here on GitHub or donate through Open Collective.

Any donations received will be used to cover infrastructure costs, such as our domain name and hosting services. Our main project site is easily hosted by Netlify, but we are considering building a few new features that would require more than static hosting. All project-related expenses are tracked on our Open Collective profile, for transparency.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sopel-8.0.4.tar.gz (250.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sopel-8.0.4-py3-none-any.whl (287.7 kB view details)

Uploaded Python 3

File details

Details for the file sopel-8.0.4.tar.gz.

File metadata

  • Download URL: sopel-8.0.4.tar.gz
  • Upload date:
  • Size: 250.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.11

File hashes

Hashes for sopel-8.0.4.tar.gz
Algorithm Hash digest
SHA256 d7a403cec642aae00f1f714fc818f179719cbd276360b6454d73740129de44e5
MD5 69abb0c6f1ab909deeb19c3c37e919c2
BLAKE2b-256 69c97bc9a1252126c258addc85cf6526d5d177a0485d0a058edcf4e9bb7d6492

See more details on using hashes here.

File details

Details for the file sopel-8.0.4-py3-none-any.whl.

File metadata

  • Download URL: sopel-8.0.4-py3-none-any.whl
  • Upload date:
  • Size: 287.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.11

File hashes

Hashes for sopel-8.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9a98ada4193b260c7bb4563951ed664bac82ed3fd1056b2376faf7116566c215
MD5 8e159a36e37a8b0e9255b9d6f40336bf
BLAKE2b-256 6bdf3f0234e15c2500575aae9423610e723907c1ae3c83bccda739e5e5454dd4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page