discord-embed-model

discord.py advanced embeds


License
MIT
Install
pip install discord-embed-model==0.1.3

Documentation

discord_embed_model

this is an extension of the discord.py library that provides many useful features for creating and modifying embeds

Installation

pip install discord-embed-model

Usage

  1. transforming discord embed into a pydantic instance
from discord import Embed as DiscordEmbed
from discord_embed_model import Embed, to_pydantic_embed

discordEmbed : DiscordEmbed
embed : Embed = to_pydantic_embed(discordEmbed)
  1. formatting embeds using templates
from discord_embed_model import Formatter

template = Formatter(
    title="hello {user.mention}
)

user : discord.User
embed = template.format(user=user) # embed.title == "hello @user"
  1. embed that is retrievable
from discord import Interaction
from discord_embed_model import StatefulEmbed

embed = StatefulEmbed(
    title="i can get this back",
)

embed.cache()

# sent out to discord

interaction : Interaction

# get embed
rembed = interaction.message.embeds[0]

retrieved = StatefulEmbed.retrieve(rembed, target_storage=rembed.TARGET_STORAGE, method=rembed.TARGET_CONTEXT)
assert retrieved is embed