1|import { AddonRegistryEntry, AddonPreset } from "./models";
2|
3|// ── System catalog/metadata/subtitle addons (manifest-driven) ──
4|export const SYSTEM_ADDONS: AddonRegistryEntry[] = [
5|  {
6|    id: "cinemeta",
7|    name: "Cinemeta",
8|    description: "Official Stremio metadata catalog. IMDb/Stremio ID compatibility fallback.",
9|    version: "1.0.0",
10|    manifestUrl: "https://v3-cinemeta.strem.io/manifest.json",
11|    baseManifestUrl: "https://v3-cinemeta.strem.io/manifest.json",
12|    configureUrl: null,
13|    configurationRequired: false,
14|    installUrl: "stremio://v3-cinemeta.strem.io/manifest.json",
15|    logo: null,
16|    background: null,
17|    resources: ["catalog", "meta"],
18|    types: ["movie", "series"],
19|    idPrefixes: ["tt"],
20|    catalogs: [],
21|    supportedDebridServices: [],
22|    requiresDebrid: false,
23|    configurable: false,
24|    health: "unknown",
25|    enabledByDefault: true,
26|    inPresets: [],
27|    deprecated: false,
28|    fallbackOnly: false,
29|    sourceRepo: null,
30|    license: null,
31|    lastChecked: null,
32|    category: "system_metadata",
33|  },
34|  {
35|    id: "tmdb_stremio",
36|    name: "TMDB Addon",
37|    description: "Stremio TMDB metadata addon (fallback when native TMDB meta is unavailable).",
38|    version: "—",
39|    manifestUrl: "https://94c8cb9f702d-tmdb-addon.baby-beamup.club/manifest.json",
40|    baseManifestUrl: "https://94c8cb9f702d-tmdb-addon.baby-beamup.club/manifest.json",
41|    configureUrl: null,
42|    configurationRequired: false,
43|    installUrl: "stremio://94c8cb9f702d-tmdb-addon.baby-beamup.club/manifest.json",
44|    logo: null,
45|    background: null,
46|    resources: ["catalog", "meta"],
47|    types: ["movie", "series"],
48|    idPrefixes: ["tmdb"],
49|    catalogs: [],
50|    supportedDebridServices: [],
51|    requiresDebrid: false,
52|    configurable: false,
53|    health: "unknown",
54|    enabledByDefault: false,
55|    inPresets: [],
56|    deprecated: false,
57|    fallbackOnly: true,
58|    sourceRepo: null,
59|    license: null,
60|    lastChecked: null,
61|    category: "system_metadata",
62|  },
63|  {
64|    id: "tmdb_collections",
65|    name: "TMDB Collections",
66|    description: "Movie franchise and collection catalog rows from TMDB.",
67|    version: "—",
68|    manifestUrl: "https://61ab9c85a149-tmdb-collections.baby-beamup.club/manifest.json",
69|    baseManifestUrl: "https://61ab9c85a149-tmdb-collections.baby-beamup.club/manifest.json",
70|    configureUrl: null,
71|    configurationRequired: false,
72|    installUrl: "stremio://61ab9c85a149-tmdb-collections.baby-beamup.club/manifest.json",
73|    logo: null,
74|    background: null,
75|    resources: ["catalog", "meta"],
76|    types: ["movie"],
77|    idPrefixes: ["tt"],
78|    catalogs: [],
79|    supportedDebridServices: [],
80|    requiresDebrid: false,
81|    configurable: false,
82|    health: "unknown",
83|    enabledByDefault: true,
84|    inPresets: [],
85|    deprecated: false,
86|    fallbackOnly: false,
87|    sourceRepo: null,
88|    license: null,
89|    lastChecked: null,
90|    category: "system_catalogs",
91|  },
92|  {
93|    id: "opensubtitles",
94|    name: "OpenSubtitles v3",
95|    description: "Community subtitles in 50+ languages.",
96|    version: "3.0.0",
97|    manifestUrl: "https://opensubtitles-v3.strem.io/manifest.json",
98|    baseManifestUrl: "https://opensubtitles-v3.strem.io/manifest.json",
99|    configureUrl: null,
100|    configurationRequired: false,
101|    installUrl: "stremio://opensubtitles-v3.strem.io/manifest.json",
102|    logo: null,
103|    background: null,
104|    resources: ["subtitles"],
105|    types: ["movie", "series"],
106|    idPrefixes: ["tt"],
107|    catalogs: [],
108|    supportedDebridServices: [],
109|    requiresDebrid: false,
110|    configurable: false,
111|    health: "unknown",
112|    enabledByDefault: true,
113|    inPresets: [],
114|    deprecated: false,
115|    fallbackOnly: false,
116|    sourceRepo: null,
117|    license: null,
118|    lastChecked: null,
119|    category: "system_subtitles",
120|  },
121|  {
122|    id: "more_like_this",
123|    name: "More Like This",
124|    description: "Similar-title recommendations (requires user configuration — disabled by default).",
125|    version: "0.11.6",
126|    manifestUrl: "https://bbab4a35b833-more-like-this.baby-beamup.club/manifest.json",
127|    baseManifestUrl: "https://bbab4a35b833-more-like-this.baby-beamup.club/manifest.json",
128|    configureUrl: null,
129|    configurationRequired: true,
130|    installUrl: "stremio://bbab4a35b833-more-like-this.baby-beamup.club/manifest.json",
131|    logo: null,
132|    background: null,
133|    resources: ["catalog", "meta"],
134|    types: ["movie", "series"],
135|    idPrefixes: [],
136|    catalogs: [],
137|    supportedDebridServices: [],
138|    requiresDebrid: false,
139|    configurable: true,
140|    health: "unknown",
141|    enabledByDefault: false,
142|    inPresets: [],
143|    deprecated: false,
144|    fallbackOnly: false,
145|    sourceRepo: null,
146|    license: null,
147|    lastChecked: null,
148|    category: "system_recommendations",
149|  },
150|];
151|
152|// ── Default Stream Addon Registry ──
153|// This is the source of truth for addon metadata.
154|// Manifests are fetched/cached from real endpoints; this is the fallback.
155|// Updated: 2026-05-27
156|
157|export const DEFAULT_ADDONS: AddonRegistryEntry[] = [
158|  {
159|    id: "aiostreams",
160|    name: "AIOStreams",
161|    description:
162|      "Consolidates multiple streaming addons and debrid services into a single interface. Supports Real-Debrid, AllDebrid, Premiumize, TorBox, Debrid-Link, EasyDebrid. Configurable via web UI at aiostreams.viren070.me.",
163|    version: "—",
164|    manifestUrl: "https://aiostreams.elfhosted.com/manifest.json",
165|    baseManifestUrl: "https://aiostreams.elfhosted.com/manifest.json",
166|    configureUrl: "https://aiostreams.viren070.me",
167|    configurationRequired: true,
168|    installUrl: "https://aiostreams.elfhosted.com",
169|    logo: null,
170|    background: null,
171|    resources: ["stream"],
172|    types: ["movie", "series", "anime", "other"],
173|    idPrefixes: ["tt", "kitsu"],
174|    catalogs: [],
175|    supportedDebridServices: [
176|      "realdebrid", "alldebrid", "premiumize", "torbox", "debridlink", "easydebrid",
177|    ],
178|    requiresDebrid: true,
179|    configurable: true,
180|    health: "unknown",
181|    enabledByDefault: true,
182|    inPresets: ["simple", "balanced", "max_sources"],
183|    deprecated: false,
184|    fallbackOnly: false,
185|    sourceRepo: "https://github.com/Viren070/AIOStreams",
186|    license: "GPL-3.0",
187|    lastChecked: null,
188|    category: "streams",
189|  },
  {
    id: "comet",
    name: "Comet",
    description:
      "Stremio's fastest torrent/debrid search add-on. Aggregates 17+ scrapers with RTN ranking. Supports RD, AD, DL.",
    version: "2.0.0",
    manifestUrl: "https://comet.elfhosted.com/manifest.json",
    baseManifestUrl: "https://comet.elfhosted.com/manifest.json",
    configureUrl: "https://comet.elfhosted.com/configure",
    configurationRequired: true,
    installUrl: "https://comet.elfhosted.com",
201|    logo: "https://raw.githubusercontent.com/g0ldyy/comet/main/assets/icon.png",
202|    background: "https://raw.githubusercontent.com/g0ldyy/comet/main/assets/background.png",
203|    resources: ["stream"],
204|    types: ["movie", "series", "anime", "other"],
205|    idPrefixes: ["tt", "kitsu"],
206|    catalogs: [],
207|    supportedDebridServices: ["realdebrid", "alldebrid", "debridlink"],
208|    requiresDebrid: true,
209|    configurable: true,
210|    health: "unknown",
211|    enabledByDefault: true,
212|    inPresets: ["balanced", "max_sources"],
213|    deprecated: false,
214|    fallbackOnly: false,
215|    sourceRepo: "https://github.com/g0ldyy/comet",
216|    license: "GPL-3.0",
217|    lastChecked: null,
218|    category: "streams",
219|  },
220|  {
221|    id: "mediafusion",
222|    name: "MediaFusion",
223|    description:
224|      "Open-source streaming platform for Movies, Series, and Live TV. Aggregates 9+ scrapers, supports 11+ debrid providers, Redis/PostgreSQL caching. Also provides catalog and meta resources.",
225|    version: "5.5.2",
226|    manifestUrl: "https://mediafusion.elfhosted.com/manifest.json",
227|    baseManifestUrl: "https://mediafusion.elfhosted.com/manifest.json",
228|    configureUrl: null,
229|    configurationRequired: true,
230|    installUrl: "https://mediafusion.elfhosted.com",
231|    logo: "https://mediafusion.elfhosted.com/static/images/MediaFusion%20Logo.png",
232|    background: null,
233|    resources: ["stream", "catalog", "meta"],
234|    types: ["movie", "series", "tv", "events"],
235|    idPrefixes: ["tt", "tmdb:", "tvdb:", "mal:", "mf", "dl"],
236|    catalogs: [],
237|    supportedDebridServices: [
238|      "realdebrid", "alldebrid", "premiumize", "torbox", "debridlink",
239|      "easydebrid", "offcloud", "seedr", "pikpak",
240|    ],
241|    requiresDebrid: true,
242|    configurable: true,
243|    health: "unknown",
244|    enabledByDefault: true,
245|    inPresets: ["balanced", "max_sources"],
246|    deprecated: false,
247|    fallbackOnly: false,
248|    sourceRepo: "https://github.com/mhdzumair/MediaFusion",
249|    license: "AGPL-3.0",
250|    lastChecked: null,
251|    category: "streams",
252|  },
253|  {
254|    id: "torrentio",
255|    name: "Torrentio",
256|    description:
257|      "The #1 source for cached debrid streams. Provides torrent streams from 30+ scraped providers (YTS, EZTV, 1337x, TPB, Kickass, etc). Supports RD, AD, PM, DL, ED. Configure via web UI.",
258|    version: "0.0.15",
259|    manifestUrl: "https://torrentio.strem.fun/manifest.json",
260|    baseManifestUrl: "https://torrentio.strem.fun/manifest.json",
261|    configureUrl: "https://torrentio.strem.fun/configure",
262|    configurationRequired: true,
263|    installUrl: "https://torrentio.strem.fun",
264|    logo: "https://torrentio.strem.fun/images/logo_v1.png",
265|    background: "https://torrentio.strem.fun/images/background_v1.jpg",
266|    resources: ["stream"],
267|    types: ["movie", "series", "anime", "other"],
268|    idPrefixes: ["tt", "kitsu"],
269|    catalogs: [],
270|    supportedDebridServices: ["realdebrid", "alldebrid", "premiumize", "debridlink", "easydebrid"],
271|    requiresDebrid: true,
272|    configurable: true,
273|    health: "unknown",
274|    enabledByDefault: false,
275|    inPresets: ["max_sources"],
276|    deprecated: false,
277|    fallbackOnly: false,
278|    sourceRepo: "https://github.com/TheBeastLT/torrentio-scraper",
279|    license: "GPL-3.0",
280|    lastChecked: null,
281|    category: "streams",
282|  },
283|  {
284|    id: "jackettio",
285|    name: "Jackettio",
286|    description:
287|      "Resolves streams using Jackett and Debrid integration. Seamlessly integrates with private trackers via Jackett. Supports custom indexer configurations.",
288|    version: "1.7.0",
289|    manifestUrl: "https://jackettio.elfhosted.com/manifest.json",
290|    baseManifestUrl: "https://jackettio.elfhosted.com/manifest.json",
291|    configureUrl: null,
292|    configurationRequired: true,
293|    installUrl: "https://jackettio.elfhosted.com",
294|    logo: "https://docs.elfhosted.com/images/logo.png",
295|    background: null,
296|    resources: ["stream"],
297|    types: ["movie", "series"],
298|    idPrefixes: ["tt"],
299|    catalogs: [],
300|    supportedDebridServices: ["realdebrid", "alldebrid"],
301|    requiresDebrid: true,
302|    configurable: true,
303|    health: "unknown",
304|    enabledByDefault: false,
305|    inPresets: [],
306|    deprecated: false,
307|    fallbackOnly: false,
308|    sourceRepo: "https://github.com/arvida42/jackettio",
309|    license: "AGPL-3.0",
310|    lastChecked: null,
311|    category: "streams",
312|  },
313|];
314|
315|/** All registry entries: system + stream addons. */
316|export const ALL_REGISTRY_ADDONS: AddonRegistryEntry[] = [
317|  ...SYSTEM_ADDONS,
318|  ...DEFAULT_ADDONS,
319|];
320|
321|export const DEFAULT_PRESETS: AddonPreset[] = [
322|  {
323|    id: "simple",
324|    name: "Simple",
325|    description: "AIOStreams only — one addon, all sources",
326|    addonIds: ["aiostreams"],
327|  },
328|  {
329|    id: "balanced",
330|    name: "Balanced",
331|    description: "AIOStreams + Comet + MediaFusion — speed and coverage",
332|    addonIds: ["aiostreams", "comet", "mediafusion"],
333|  },
334|  {
335|    id: "max_sources",
336|    name: "Max Sources",
337|    description: "All available addons — maximum coverage",
338|    addonIds: ["aiostreams", "comet", "mediafusion", "torrentio", "jackettio"],
339|  },
340|  {
341|    id: "custom",
342|    name: "Custom",
343|    description: "Manually pick which addons to enable",
344|    addonIds: [],
345|  },
346|];
347|