No description
Find a file
2022-05-01 10:15:53 -06:00
jarvis Log table to console 2022-05-01 10:15:53 -06:00
.flake8 Cooldown handling, formatting 2022-03-25 12:45:41 -06:00
.gitignore Update gitignore 2021-09-01 20:42:19 -06:00
.pre-commit-config.yaml Fix reminders display in /reminders delete 2022-03-29 15:30:09 -06:00
config.example.yaml Update config 2022-03-23 09:30:14 -06:00
install.sh Swap out cloc for tokei 2021-07-15 14:35:27 -06:00
jarvis.png More logo updates 2022-02-03 14:43:21 -07:00
jarvis.service Change terminate to kill 2021-06-26 12:31:34 -06:00
jarvis.svg More logo updates 2022-02-03 14:43:21 -07:00
jarvis_small.png More logo updates 2022-02-03 14:43:21 -07:00
LICENSE Add LICENSE, PRIVACY, TERMS 2022-03-10 22:42:34 -07:00
poetry.lock Add jurigged, crash command 2022-04-30 20:04:19 -06:00
PRIVACY.md Add LICENSE, PRIVACY, TERMS 2022-03-10 22:42:34 -07:00
pyproject.toml Add jurigged, crash command 2022-04-30 20:04:19 -06:00
README.md Slight branding change 2022-02-03 17:01:41 -07:00
requirements.txt Add context menu for starboard 2021-09-01 20:23:16 -06:00
run.py Remove phishing sync, rely on external API for now 2022-03-17 15:52:26 -06:00
schema.yaml Add extra checks on mute/ban/unmute loop. Add unmute command, closes #25 2021-07-02 21:26:51 -06:00
TERMS.md Add LICENSE, PRIVACY, TERMS 2022-03-10 22:42:34 -07:00

J.A.R.V.I.S

Just Another Rather Very Intelligent System


python 3.8+ tokei lines of code discord chat widget

Welcome to the J.A.R.V.I.S. Initiative! While the main goal is to create the best discord bot there can be, a great achievement would be to present him to the Robots and have him integrated into the dbrand server. Feel free to suggest anything you may think to be useful… or cool.

Note: Some commands have been custom made to be used in the dbrand server.

Features

J.A.R.V.I.S. currently offers:

  • 👩‍💼 Administration: verify, ban/unban, kick, purge, mute/unmute and more!
  • 🚓 Moderation: lock/unlock, lockdown, warn, autoreact, and also more!
  • 👻 Fun: jokes. Please proceed to laugh now.
  • 👑 dbrand: ctc2 and other dbrand-specific commands. Join their server to see them in action!

Contributing

Before creating an issue, please ensure that it hasn't already been reported/suggested. If you have a question, please join the community Discord before opening an issue.

If you wish to contribute to the J.A.R.V.I.S codebase or documentation, join the Discord! The recognized developers there will help you get started.

Community

Join the Stark R&D Department Discord server to be kept up-to-date on code updates and issues.

Requirements

  • MongoDB 5.0 or higher
  • Python 3.10 or higher
  • tokei 12.1 or higher

On top of the above requirements, the following pip packages are also required:

  • dis-snek>=5.0.0
  • psutil>=5.8, <6
  • GitPython>=3.1, <4
  • PyYaml>=5.4, <6
  • pymongo>=3.12.0, <4
  • opencv-python>=4.5, <5
  • Pillow>=8.2.0, <9
  • python-gitlab>=2.9.0, <3
  • ulid-py>=1.1.0, <2

J.A.R.V.I.S. Cogs

Current cogs that are implemented:

  • AdminCog
    • Handles all admin commands
  • ModlogCog
    • Handles modlog events
  • AutoreactCog
    • Handles autoreaction configuration
  • CTC2Cog
    • dbrand Complete the Code utilities
  • DbrandCog
    • dbrand-specific functions and utilities
  • DevCog
    • Developer utilities, such as hashing, encoding, and UUID generation
  • ErrorCog
    • Handles all bot errors
  • GitlabCog
    • Shows Gitlab information about J.A.R.V.I.S.
  • ImageCog
    • Image-processing cog. Only cog with no slash commands
  • JokesCog
    • Get a joke, have a laugh
  • OwnerCog
    • For the bot owner. Bot management commands
  • RemindmeCog
    • Manage reminders
  • RolegiverCog
    • Configure selectable roles
  • SettingsCog
    • Manage Guild settings
  • StarboardCog
    • Configure and add starboards and stars
  • UtilCog
    • Generic utilities, like userinfo and roleinfo
  • VerifyCog
    • Guild verification

Directories

jarvis

The bot itself

jarvis.cogs

All of the cogs listed above are stored in this directory

jarvis.cogs.admin

Contains all AdminCogs, including:

  • BanCog
  • KickCog
  • LockCog
  • LockdownCog
  • MuteCog
  • PurgeCog
  • RolepingCog
  • WarningCog
jarvis.cogs.modlog

Contains all ModlogCogs, including:

  • ModlogCommandCog
  • ModlogMemberCog
  • ModlogMessageCog

jarvis.cogs.modlog.utils includes modlog-specific utilities

jarvis.data

Contains data relevant to J.A.R.V.I.S., such as emoji lookups and dbrand data

jarvis.data.json

Any JSON files that are needed are stored here

jarvis.db

All database-related files.

jarvis.db.types handles almost all of the database conections

jarvis.events

Containers for @on_ d.py events

jarvis.tasks

All background tasks run from this folder

jarvis.utils

Generic utilities