A modern SDK for building Stremio addons with TypeScript (or JavaScript).
- 🎯 Type-safe - Full TypeScript support with comprehensive type definitions
- ✅ Runtime validation - Optional schema validation using Zod (or bring your own validation library)
- 🚀 Modern - ESM-first, tree-shakeable
- 🧩 Modular - Composable packages for different use cases
- 📦 Multiple runtimes - Supports Node.js, Node.js + Express, hono, vercel, cloudflare workers etc. (or bring your own runtime)
- 🔧 Easy migration - Use our compat package for a drop-in replacement or fully switch in a matter of minutes. The API is designed to be as similar to the official SDK as possible.
pnpm add @stremio-addon/sdkThis step is optional but highly recommended to ensure your addon adheres to the expected schemas.
pnpm add @stremio-addon/zod zodpnpm add @stremio-addon/linter stremio-addon-linterSee supported runtimes.
Frontends are intentionally out of scope. See docs/frontend.md for the reasoning and how to add your own.
See examples.
If you're totally new to addon development, check out the official Stremio Addon SDK documentation and the Stremio addon protocol documentation to get familiar with Stremio addon development concepts.
If you know how to code an addon using the official SDK already, you pretty much already know how to use this SDK. You can migrate your existing code in ~ 2 minutes by following the migration guide.
- Node.js LTS or higher
- PNPM v10+
# Clone the repository
git clone https://github.com/Stremio-Community/stremio-addon-sdk
cd stremio-addon-sdk
# Install dependencies
pnpm install
# Build all packages
pnpm build
# Watch mode for development
pnpm build:watchWe welcome contributions from the community! Please see our Contribution Guide for more details.
License: MIT
If you find this SDK useful, please consider giving it a star on GitHub!
Made with ❤️ by and for the Stremio community