Skip to main content

Slackle

Slackle Framework PyPI Version Slack + FastAPI Python Version


✨ Slackle up your Slack!

Slackle is a lightweight and magical framework for building Slack apps effortlessly.

→ Visit the Official Website


🚀 Features

  • ⚡️ Slash command routing — Handle /your-command, /like, /magic
  • 💬 Event handling — @app_mention, message, reaction_added, etc.
  • 🎨 Slack formatting — Clean markdown and block formatting made easy
  • 🧩 Plugin system — Extend functionality with decorators and custom plugins
  • ⚙️ FastAPI + Slack SDK — Built on proven tools, superfast and flexible

📦 Installation

pip install slackle

🧑‍💻 Getting Started

import os

from slackle import Slackle, SlackleConfig
from slackle.utils.slack import get_user_mention

# Set up slackle configuration
config = SlackleConfig(
    app_token=os.getenv("APP_TOKEN"),
    verification_token=os.getenv("VERIFICATION_TOKEN")
)

# Initialize slackle app
app = Slackle(config=config)

# Add handler for message events
@app.on_event("message")
async def say_hello(slack, user_id, channel_id):
    mention = get_user_mention(user_id)
    print("User ID:", user_id)
    await slack.send_message(
        channel=channel_id,
        message=f"Hello {mention}!",
    )

# Add handler for /say slash command
@app.on_command("/say")
async def say_something(slack, text, user_id, channel_id):
    name = await slack.get_user_name(user_id)
    await slack.send_message(
        channel=channel_id,
        message=f"{name} said: {text}",
    )

📁 See examples/ for more code samples.

🤝 Contribution

We welcome contributions! Check out the Contributing Guide to get started.


🪪 License

MIT License. See the LICENSE file for details.

Metadata

Release files for slackle 0.2.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for slackle 0.2.7
File Size Uploaded
slackle-0.2.7.tar.gz 17.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for slackle 0.2.7
File Interpreter ABI Platform
slackle-0.2.7-py3-none-any.whl Python 3 none any Details

Total release size: 39.7 kB

Release files / slackle-0.2.7.tar.gz

Download URL slackle-0.2.7.tar.gz
Size 17.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7e13fcee43c71e51c30108c791d246f13a0bdd2408c180d40940b70a87785fa0
BLAKE2b-256 checksum
How to use checksums
739d526d661f3d66ea1cea8a1bdc20c18f5f3985963093a4ef71b147bb50fa8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release files / slackle-0.2.7-py3-none-any.whl

Download URL slackle-0.2.7-py3-none-any.whl
Size 22.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d4adc322fcb999da86021339ca1357081b7c53839e6f35704d15516d5f5875a1
BLAKE2b-256 checksum
How to use checksums
27e3d47b98e0d22b335a47583a1dcb889e4db4bd64a909b0a82dd96c41256124
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.9

Release history Release notifications | RSS feed

This release

0.2.7 This release

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page