Slack Developer Kit for Python
4k
Stars
855
Forks
51
Open issues
30
Contributors
AI Analysis
The Slack Developer Kit for Python provides official SDKs for all Slack APIs (Web, Webhooks, Socket Mode, Audit Logs, SCIM, OAuth, RTM) and Block Kit UI builders, enabling Python developers to build Slack apps and integrations. It serves primarily developers building custom Slack apps or integrating third-party services into Slack workflows, not general-purpose application developers. Specifically for the Slack ecosystem; not useful outside of Slack integration work.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Slack's official Python SDK: foundational API wrapper maintained by Slack itself, not a rapid growth story but steady production backbone
The Python Slack SDK is the official, Slack-maintained wrapper around Slack's platform APIs (Web, RTM, Events, Webhooks, OAuth, SCIM, Audit Logs). It provides low-level access to Slack platform capabilities and is used by organizations building Slack apps, bots, and integrations in Python. Unlike higher-level frameworks (e.g., Bolt), this SDK handles direct API interaction and is positioned as foundational infrastructure rather than a batteries-included framework. Real-world adoption is implicit but not quantified in public metrics.
Created November 2014 as a community project, this SDK evolved from the legacy slackclient library (now in maintenance mode). The current slack_sdk package represents v3+, positioning it as the modern, actively-maintained successor. Slack formalized stewardship, making it the official Python SDK in the platform's developer toolkit.
Growth has been steady rather than explosive: 4,009 stars over ~12 years suggests long-tail, stable adoption. The 2-star gain in the last 7 days (and modest fork count of 855) reflects a mature utility that has reached equilibrium — neither growing rapidly nor declining. This is typical for foundational infrastructure rather than new solutions. The deprecation of slackclient and migration guidance indicate Slack is actively consolidating the ecosystem toward this single library.
Adoption not verified through quantitative public data. However, Slack's official endorsement, maintenance responsibility, and the replacement of legacy slackclient imply widespread internal and enterprise usage. PyPI badge suggests download tracking exists but is not detailed in README. The migration guide from v1→v3 suggests many production systems have already adopted this SDK, but concrete user counts or case studies are absent from README.
Based on README, the SDK is modular: separate packages for Web API (`slack_sdk.web`), webhooks, Socket Mode, SCIM, Audit Logs, OAuth, and RTM. Appears to offer both synchronous and async interfaces. Likely uses standard HTTP client libraries under the hood, though actual implementation not inspectable from metadata. Block Kit builders suggest model-based UI construction.
README references CI/build actions and Codecov badge, indicating automated testing infrastructure is in place. Specific coverage percentage not stated in README excerpt. Presence of badges suggests developers maintain visibility on test quality.
Last push 2026-07-03 (6 days before evaluation date) indicates active, recent maintenance. Repository created 2014; 12 years of continuous operation suggests stability. However, modest star growth and slow recent activity suggest maintenance mode (regular but not fast-paced development) rather than rapid iteration.
ADOPT IF: you are building Slack apps or integrations in Python and need direct, low-level access to Slack APIs; you are migrating from slackclient and need a supported replacement; you want the stability of an official, Slack-maintained library. AVOID IF: you need a rapid, event-driven framework out-of-the-box (use Bolt instead); you are not building Slack-specific features and want maximum portability. MONITOR IF: you are evaluating Python Slack tooling for the first time — confirm that python-slack-sdk or Bolt (Slack's recommended high-level option) fits your specific use case before committing; adoption trends across the Slack ecosystem may shift if Slack changes its strategy.
Independent dimensions
Mainstream potential
4/10
Technical importance
7/10
Adoption evidence
5/10
- Adoption metrics are not publicly visible; real-world usage scale is unclear from available data, though Slack's official status implies substantial internal usage.
- Slow recent growth (2 stars in 7 days) may indicate market saturation or that growth has plateaued; unable to distinguish between stable maturity and declining interest without deeper analytics.
- Dependency on Slack's priorities: if Slack's API strategy or internal priorities shift, maintenance pace or feature velocity could change, affecting downstream users.
- Migration burden for legacy slackclient users; the README indicates v1→v3 migrations are necessary, but adoption friction may delay some teams' upgrades.
- Async interface quality is not detailed in README; implementation concerns around concurrent API calls cannot be verified from metadata alone.
python-slack-sdk will remain the canonical, Slack-maintained Python library for direct API access. Growth will likely remain flat or slow, as the library serves a stable, defined use case (API wrapper) rather than an expanding market. Higher-level frameworks like Bolt may continue to gain relative adoption for common patterns, relegating python-slack-sdk to a foundational role. Slack's ongoing stewardship suggests long-term viability, but explosive growth is unlikely.
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Language
- Python
- License
- MIT
- Last updated
- 7d ago
- Created
- 142mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
Top contributors
Similar repos
slackapi/node-slack-sdk
The Slack Developer Kit for Node.js is an official, modular SDK providing...
slackapi/bolt-python
Bolt for Python is an official Slack framework for building Slack apps quickly...
slack-ruby/slack-ruby-client
A Ruby client library for Slack's Web and Events APIs, enabling developers to...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
4k | +1 | Python | 8/10 | 7d ago |
|
|
3.4k | — | TypeScript | 8/10 | 18h ago |
|
|
1.3k | — | Python | 8/10 | 18h ago |
|
|
5k | — | Go | 8/10 | 1d ago |
|
|
1.3k | — | Ruby | 8/10 | 4d ago |
|
|
31.1k | — | Python | 8/10 | 19h ago |
Bolt is a higher-level, batteries-included framework built on top of python-slack-sdk. Bolt adds request handling, middleware, and simplified event-driven patterns. python-slack-sdk is lower-level and more flexible; Bolt is more opinionated and faster for typical use cases. Both are Slack-maintained; they are complementary rather than competing.
The Go SDK has slightly more stars (4,952 vs. 4,009), suggesting comparable or marginally higher Go adoption. Both are official SDKs from Slack. Language choice and ecosystem preference drive adoption; no quality gap implied.
Node SDK has fewer stars (3,378), but this may reflect the broader ecosystem (many JS/TS Slack developers may use Bolt or other abstractions). Official, maintained equivalents exist across languages; python-slack-sdk holds its own in the Python ecosystem.
Numerous third-party Python Slack libraries exist but lack Slack's official backing. python-slack-sdk's status as the canonical library provides stability, documentation, and long-term support guarantees that third-party tools cannot match.
Teams can call Slack's REST APIs directly. SDKs add convenience, error handling, OAuth flows, and type hints. python-slack-sdk removes friction but is optional; adoption likely driven by developer experience rather than necessity.