Skip to main content

A collection of custom Python modules for Discord bots and utilities

Project description

CustomModules

PyPI version Python versions License: AGPL v3 Build Status PyPI downloads Code style: black

A collection of custom Python modules for Discord bots and various utilities.

Install the base package:

pip install CustomModules

Install with specific module dependencies:

# Install with a specific module's dependencies
pip install CustomModules[statdock]
pip install CustomModules[databasehandler]
pip install CustomModules[loghandler]

# Install multiple modules
pip install CustomModules[statdock,databasehandler,loghandler]

# Install all modules with all dependencies
pip install CustomModules[all]

Available Modules

  • AppTranslation - Discord Application translation utilities
  • BitmapHandler - Bitmap manipulation and handling
  • BotDirectory - Bot directory management
  • DatabaseHandler - Multi-database async handler (SQLite, MySQL, PostgreSQL, MongoDB)
  • Googletrans - Google Translate integration
  • InviteTracker - Discord invite tracking
  • Killswitch - Dead by Daylight killswitch monitoring
  • Libretrans - LibreTranslate integration
  • LogHandler - Advanced logging with colored console output
  • Patchnotes - Patch notes management for DeadByDaylight
  • PrivateVoice - Private voice channel management
  • RandomUsernames - Random username generation
  • StatDock - Statistics tracking for Discord
  • Steam - Steam API integration
  • SteamCharts - Steam Charts data retrieval
  • Twitch - Twitch API integration

Usage

Import modules using dot notation:

from CustomModules.bitmap_handler import BitmapHandler
from CustomModules.database_handler import DatabaseHandler
from CustomModules.log_handler import LogManager
from CustomModules.stat_dock import setup as stat_dock_setup

Logger Support (v2.0.2+)

All modules now support optional logger parameter for better debugging and monitoring:

import logging
from CustomModules.bitmap_handler import BitmapHandler
from CustomModules.steam import API as SteamAPI

# Create a parent logger
logger = logging.getLogger('MyApp')

# All modules create child loggers under CustomModules.ModuleName
bitmap = BitmapHandler(['read', 'write'], logger=logger)
# Creates logger: MyApp.CustomModules.BitmapHandler

steam_api = SteamAPI(api_key='your_key', logger=logger)
# Creates logger: MyApp.CustomModules.Steam

# Function-based modules use set_logger()
from CustomModules import killswitch
killswitch.set_logger(logger)
# Creates logger: MyApp.CustomModules.Killswitch

Requirements

  • Python 3.10 or higher
  • Additional dependencies are installed based on which modules you use (see extras_require)

License

This project is licensed under the GNU Affero General Public License v3 (AGPL-3.0).

Documentation

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support

For issues and questions, please use the GitLab Issues page.

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

custommodules-3.2.0.tar.gz (68.8 kB view details)

Uploaded Source

Built Distribution

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

custommodules-3.2.0-py3-none-any.whl (76.4 kB view details)

Uploaded Python 3

File details

Details for the file custommodules-3.2.0.tar.gz.

File metadata

  • Download URL: custommodules-3.2.0.tar.gz
  • Upload date:
  • Size: 68.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for custommodules-3.2.0.tar.gz
Algorithm Hash digest
SHA256 07c0bba3cb32239f5098b3880aa9e660ee6c020f63298a6491a43e20465a535a
MD5 18a1a7acf7a65a74aa70ff7a5ddc4e84
BLAKE2b-256 e9d75289ec28fa178f18ec92a7f18ca5040dd391bce47d964ae1503fe37a11b5

See more details on using hashes here.

File details

Details for the file custommodules-3.2.0-py3-none-any.whl.

File metadata

  • Download URL: custommodules-3.2.0-py3-none-any.whl
  • Upload date:
  • Size: 76.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for custommodules-3.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 27e0a65a2485d97475bc16ec219be8193451bbf98508fbb5944b45f94fa61b83
MD5 1568069daa8bb8e9939f80b6777c7b78
BLAKE2b-256 a9ab78276c38aa374bc5e9d77751845e0b2b7382cc0f25195e8a2d13de46b2b9

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