Skip to content

A simple set of tools to write easier code using discord-py-interactions lib ๐Ÿ’…

License

Notifications You must be signed in to change notification settings

discord-styled/discord-interactions-styled

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

25 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

discord-py-interactions

Write easier code using discord-interactions with interactions-styled.

About | Installation | Examples | Discord | PyPI | Documentation

About

What?

discord-interactions-styled is a set of already coded functions, decorators an more for the known discord-py-interactions library.

Why?

Well, discord-py-interactions is already pretty easy right? but, when you're working on a large-size bot it becomes repetitive to write always the same code to get results, it's redundant, that's when interactions-styled comes to the scene with a full set of functions to get results so much faster.

How?

Just look at this example, we're denying permissions for @everyone and allowing them for two role ids 456 and 789:

# base library
@slash.slash(..., permissions={
    123: [
        create_permission(123, SlashCommandPermissionType.ROLE, False),
        create_permission(456, SlashCommandPermissionType.ROLE, True)
        create_permission(789, SlashCommandPermissionType.ROLE, True)
    ]
})

# With discord-interactions-styled
@slash.slash(...)
@only_allow_roles(123, [456, 789])

That's some clean & pretty code right there huh

Installation

You can install this lib using pip, just type the following line below:

pip install -U discord-interactions-styled

Examples

Creating options for a slash command

from discord_slash.utils.manage_commands import create_option

# discord-py-interactions
@slash.slash(..., options=[
    create_option("option1", "my description", 3, True),
    create_option("option2", "another description", 4, True)
    create_option("option3", "and another", 3, False)
])

# discord-interactions-styled
from discord_styled.slash import option

@option("option1", "my description")
@option("option2", "another description", 4)
@option("option3", "and another", required=False)
@slash.slash(...)

Denying permissions for @everyone in a slash command

# discord-py-interactions
from discord_slash.utils.manage_commands import create_permission

@slash.slash(..., permissions={
    123: [
        create_permission(123, SlashCommandPermissionType.ROLE, False)
    ]
})

# discord-interactions-styled
from discord_styled.permissions import deny_all

@slash.slash(...)
@deny_all()

Documentation

These are just a few examples, we recommend you to go and visit the official documentation