Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions bot/bot.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from pathlib import Path
from sys import stderr
from traceback import print_exc
from os import environ

from discord.ext import commands


HACKTOBERBOT_TOKEN = environ.get('HACKTOBERBOT_TOKEN')
bot = commands.Bot(command_prefix=commands.when_mentioned_or('!'))

if __name__ == '__main__':
# Scan for files in the /cogs/ directory and make a list of the file names.
cogs = [file.stem for file in Path('cogs').glob('*.py')]
for extension in cogs:
try:
bot.load_extension(f'cogs.{extension}')
except Exception as e:
print(f'Failed to load extension {extension}.', file=stderr)
print_exc()

bot.run(HACKTOBERBOT_TOKEN)
36 changes: 36 additions & 0 deletions bot/cogs/template.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
from discord.ext import commands


class Template:

"""
A template cog that contains examples of commands and command groups.
"""

def __init__(self, bot):
self.bot = bot

@commands.command(name='repo', aliases=['repository', 'project'], brief='A link to the repository of this bot.')
async def repository(self, ctx):
await ctx.send('https://github.com/discord-python/hacktoberbot')

@commands.group(name='git', invoke_without_command=True)
async def github(self, ctx):
"""
A command group with the name git. You can now create sub-commands such as git commit.
"""

await ctx.send('Resources to learn **Git**: https://try.github.io/.')

@github.command()
async def commit(self, ctx):
"""
A command that belongs to the git command group. Invoked using git commit.
"""

await ctx.send('`git commit -m "First commit"` commits tracked changes.')


# Required in order to load the cog, use the class name in the add_cog function.
def setup(bot):
bot.add_cog(Template(bot))
Empty file added bot/constants.py
Empty file.
10 changes: 10 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
aiohttp==3.4.4
async-timeout==3.0.0
attrs==18.2.0
chardet==3.0.4
discord.py==1.0.0a0
idna==2.7
idna-ssl==1.1.0
multidict==4.4.2
websockets==6.0
yarl==1.2.6
6 changes: 6 additions & 0 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[flake8]
max-line-length=120
application_import_names=proj
ignore=P102,B311,W503,E226,S311
exclude=__pycache__, venv, .venv, tests
import-order-style=pycharm