Skip to content

Commit e31d7dc

Browse files
committed
- **Stremio Service no longer needed**:
- Now Enhanced run a Stremio streaming server in the background without needing Stremio Service. - It uses a more recent version of the streaming server which should fix some playback issues. The latest available release of Stremio Service used version 4.20.8 whereas Enhanced now use 4.20.11 built-in. - This should also fix issues related to needing Stremio Service, such as [Playback stops working every few episodes](#33) (at least from my testing it did, if you still encounter this issue, feel free to inform me). - Enhanced stores Stremio’s streaming server logs in a stremio-server.log file located in its application data directory (`~/.config/stremio-enhanced` on Linux, `~/Library/Application Support/stremio-enhanced` on macOS, and `%appdata%/stremio-enhanced` on Windows). - **Improved Discord Rich Presence**: - Now if you resume playback from the home page directly, it will also update status on Discord and show what you're watching. - **Explore and try community-made plugins & themes from the app**: - You can now go to the settings menu and click on the "Community Plugins & Themes" button to easily explore and download available themes and plugins for Stremio Enhanced (not many available right now). - The themes and plugins are fetched from [Stremio Enhanced Registry](https://github.com/REVENGE977/stremio-enhanced-registry/). If you're a developer you can submit your work there. - **Added support for transparent themes**: - There is a new toggle option in the settings menu. When enabled it will use the transparent flag in Electron to allow transparent themes. - Enabling this option might affect performance and a restart is required after enabling it. - **No longer uses OpenGL on macOS**: - In the previous version, Enhanced used OpenGL for all platforms (this is done to fix an issue where the audio tracks menu in the video player is unavailable). - Enhanced now uses OpenGL on Windows/Linux but not macOS, since OpenGL is not well optimized on macOS and caused performance issues. *Note: I don't have a mac so I'm not sure if this will introduce more issues. Feel free to report any issues you encounter.* - **Updated Electron to 37**: - [Electron 36 on Linux experienced conflicts between GTK 2/3 and GTK 4 libraries](#37). This should fix that issue.
1 parent c90d9f4 commit e31d7dc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+105899
-930
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Steps to reproduce the behavior:
2020
**Expected behavior**
2121
A clear and concise description of what you expected to happen.
2222

23-
**Have you checked whether the issue also occur in https://web.stremio.com/ (in your browser) if you run Stremio Service yourself? (if it does, then it's a Stremio Service issue, not Enhanced!)**
23+
**Have you checked whether the issue also occur in https://web.stremio.com/ (in your browser)?**
2424

2525
**Screenshots**
2626
If applicable, add screenshots to help explain your problem.

.github/workflows/build.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,6 @@
11
name: Build and Publish Electron App
22

33
on:
4-
push:
5-
branches:
6-
- main
7-
pull_request:
8-
branches:
9-
- main
104
workflow_dispatch:
115

126
jobs:

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ dist
33
stremio-enhanced-win32-x64
44
release-builds
55
package-lock.json
6-
.vscode
6+
.vscode
7+
backup

README.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
- [🎨 Themes and Plugins](#-themes-and-plugins)
4343
- [🖌️ Installing Themes](#️-installing-themes)
4444
- [🛠️ Installing Plugins](#️-installing-plugins)
45+
- [🌐 Community Plugins \& Themes](#-community-plugins--themes)
4546
- [❓ What Is the Difference Between Plugins and Addons?](#-what-is-the-difference-between-plugins-and-addons)
4647
- [📜 Creating Your Own Plugin](#-creating-your-own-plugin)
4748
- [🎨 Creating Your Own Theme](#-creating-your-own-theme)
@@ -57,8 +58,8 @@
5758
Stremio Enhanced is an Electron-based [Stremio](https://www.stremio.com/) client with support for plugins and themes. It enhances the default Stremio experience by adding more customization options and integrations.
5859

5960
### 🛠 How It Works
60-
- It runs the [Stremio Service](https://github.com/Stremio/stremio-service) automatically in the background.
61-
- It loads [the web version of Stremio v5](https://web.stremio.com) within an Electron environment.
61+
- It runs the Stremio streaming server automatically in the background.
62+
- It loads [the web version of Stremio](https://web.stremio.com) within an Electron environment.
6263

6364
### ✨ Features
6465
- **Themes** – Customize the look and feel of Stremio with different themes to match your style.
@@ -107,14 +108,25 @@ You can download the latest version from [the releases tab](https://github.com/R
107108

108109
![settings_screenshot](https://github.com/REVENGE977/stremio-enhanced/raw/main/images/settings_screenshot.png)
109110

111+
### 🌐 Community Plugins & Themes
112+
You can also use the new community tab.
113+
114+
1. Go to the settings and scroll down.
115+
2. Click on "Community Plugins & Themes"
116+
3. Here you can see and download the available submitted community-made themes and plugins.
117+
118+
![community_tab](./images/communitytab.png)
119+
120+
These plugins and themes are fetched from the [Stremio Enhanced Registry](https://github.com/REVENGE977/stremio-enhanced-registry) repository. If you're a developer you can submit your work there.
121+
110122
## ❓ What Is the Difference Between Plugins and Addons?
111123
- **Addons** are available on the normal version of Stremio. They add catalogs and streams for Stremio.
112124
- **Plugins** add more functionality to Stremio, like new features.
113125

114126
## 📜 Creating Your Own Plugin
115127
Plugins are simply JavaScript files running on the client side. Create a JavaScript file with a `.plugin.js` extension and write your code as you would normally for the client side.
116128

117-
As of version v0.3, you are required to provide metadata for the plugin. Here is an example:
129+
You are required to provide metadata for the plugin. Here is an example:
118130

119131
```js
120132
/**
@@ -133,6 +145,7 @@ Create a file with a name ending in `.theme.css` and write your CSS modification
133145

134146
## 🐛 Known Issues
135147
- Subtitles are not available for **some** streams that have embedded subs. This seems to be an issue with either [Stremio Web](https://web.stremio.com/) or Stremio Service, as it also occurs in the browser. Subtitles do work fine for **most** streams though.
148+
- On macOS, you'll need to bypass Gatekeeper to run the app. This is because the app is not signed.
136149

137150
## 📃 Todo List
138151
You can find the current list of tasks and planned features in the [todo.md](./todo.md) file.
@@ -159,7 +172,7 @@ If you'd like to go the extra mile, you can also support me by sponsoring the pr
159172
**This project is not affiliated in any way with Stremio.**
160173

161174
- **This project** is licensed under the MIT License.
162-
- **Stremio Service** is bundled in certain releases of this project and is licensed under the GPL-2.0 License. [You can find the source code for Stremio Service here.](https://github.com/Stremio/stremio-service)
175+
- **Stremio streaming server (server.js)** is included in the source code of this repository to be bundled in releases but is entirely made by Stremio.
163176

164177

165178
<p align="center">💻 Developed with ❤️ by <a href="https://github.com/REVENGE977">REVENGE977</a> | 📜 Licensed under MIT</p>

changelog.md

Lines changed: 95 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,98 @@ This should've been part of v0.7 tbh, but I rushed the previous release for no r
7373
- **Improved Discord Rich Presence:**
7474
- Now works even if you launch Stremio Enhanced first then you launch Discord.
7575
- Now shows the watching status type instead of playing if you're watching something.
76-
- **Custom update modal:** Now displays a custom new update dialog that shows release notes on new updates.
76+
- **Custom update modal:** Now displays a custom new update dialog that shows release notes on new updates.
77+
78+
## Update v0.9.1
79+
This is just a small update to fix compatibility issues in Linux/macOS.
80+
81+
- Changed file paths to use path.join for cross-platform compatibility.
82+
- Improved the StremioService class to check for Flatpak installation.
83+
- Fixed an issue where, on Linux, Stremio Enhanced attempted to use `process.env.APPDATA` to locate AppData, which doesn't exist on Linux and returned undefined instead. Now it will use the .config folder on Linux instead.
84+
- Now correctly opens the file explorer on the operating system the user is using. Previously, clicking "OPEN THEMES FOLDER" or "OPEN PLUGINS FOLDER" in the settings menu had no effect on non-Windows systems.
85+
86+
Just like the latest release, I'm providing stremio-service bundled builds but this time also for macOS (x64) and Linux.
87+
88+
This is what I tested:
89+
- On Linux, I Installed Stremio Service using [Flatpak](https://flathub.org/apps/com.stremio.Service). & also tested the service bundled build.
90+
- On macOS (x86, Intel), I installed Stremio Service using StremioService.dmg [from here](https://dl.strem.io/stremio-service/v0.1.13/StremioService.dmg).
91+
- On Windows, I tested both the service-bundled build and the regular build.
92+
93+
Soon, I'll transition from using Electron Packager to Electron Builder, which will fix some cross-platform compatibility issues.
94+
95+
**Note:** The macOS arm build may not work (you can run directly from source until the issue is fixed). The x86 is tested and should work.
96+
97+
[Also, the stremio-aniskip plugin is out. Give it a try!](https://github.com/REVENGE977/stremio-aniskip)
98+
99+
## Update v0.9.1+repack
100+
This is just a small update to fix compatibility issues in Linux/macOS.
101+
102+
- Changed file paths to use path.join for cross-platform compatibility.
103+
- Improved the StremioService class to check for Flatpak installation.
104+
- Fixed an issue where, on Linux, Stremio Enhanced attempted to use `process.env.APPDATA` to locate AppData, which doesn't exist on Linux and returned undefined instead. Now it will use the .config folder on Linux instead.
105+
- Now correctly opens the file explorer on the operating system the user is using. Previously, clicking "OPEN THEMES FOLDER" or "OPEN PLUGINS FOLDER" in the settings menu had no effect on non-Windows systems.
106+
- Transitioned to using electron-builder instead of electron-packager.
107+
- Implemented GitHub Actions workflow for automated project building.
108+
109+
This is what I tested:
110+
- On Linux, I Installed Stremio Service using [Flatpak](https://flathub.org/apps/com.stremio.Service). & also tested the service bundled build.
111+
- On macOS (x86, Intel), I installed Stremio Service using StremioService.dmg [from here](https://dl.strem.io/stremio-service/v0.1.13/StremioService.dmg).
112+
- On Windows, I tested both the service-bundled build and the regular build.
113+
114+
[Also, the stremio-aniskip plugin is out. Give it a try!](https://github.com/REVENGE977/stremio-aniskip)
115+
116+
**The app isn't signed so if you're on macOS you'll have to bypass Gatekeeper.**
117+
118+
You should right-click the app and choose “Open” for first time you open the app (instead of double clicking) or run on terminal this command:
119+
120+
```sh
121+
xattr -cr /path/to/Stremio.Enhanced.app
122+
```
123+
124+
or if that doesn't work try this:
125+
```sh
126+
xattr -d com.apple.quarantine /path/to/Stremio.Enhanced.app
127+
```
128+
129+
## Update v0.9.2
130+
- Updated classes names to make Enhanced compatible with the latest [Stremio Web](https://web.stremio.com/) version.
131+
- Updated Electron to 36.2.0 from 28.1.4.
132+
- This fixes an issue where the right click menu in devtools doesn't show on top of the window.
133+
- This also sets the possibility to add support for transparent themes for future updates.
134+
135+
## Update v1.0
136+
- **Stremio Service no longer needed**:
137+
- Now Enhanced run a Stremio streaming server in the background without needing Stremio Service.
138+
- It uses a more recent version of the streaming server which should fix some playback issues. The latest available release of Stremio Service used version 4.20.8 whereas Enhanced now use 4.20.11 built-in.
139+
- This should also fix issues related to needing Stremio Service, such as [Playback stops working every few episodes](https://github.com/REVENGE977/stremio-enhanced/issues/33) (at least from my testing it did, if you still encounter this issue, feel free to inform me).
140+
- Enhanced stores Stremio’s streaming server logs in a stremio-server.log file located in its application data directory (`~/.config/stremio-enhanced` on Linux, `~/Library/Application Support/stremio-enhanced` on macOS, and `%appdata%/stremio-enhanced` on Windows).
141+
- **Improved Discord Rich Presence**:
142+
- Now if you resume playback from the home page directly, it will also update status on Discord and show what you're watching.
143+
- **Explore and try community-made plugins & themes from the app**:
144+
- You can now go to the settings menu and click on the "Community Plugins & Themes" button to easily explore and download available themes and plugins for Stremio Enhanced (not many available right now).
145+
- The themes and plugins are fetched from [Stremio Enhanced Registry](https://github.com/REVENGE977/stremio-enhanced-registry/). If you're a developer you can submit your work there.
146+
- **Added support for transparent themes**:
147+
- There is a new toggle option in the settings menu. When enabled it will use the transparent flag in Electron to allow transparent themes.
148+
- Enabling this option might affect performance and a restart is required after enabling it.
149+
- **No longer uses OpenGL on macOS**:
150+
- In the previous version, Enhanced used OpenGL for all platforms (this is done to fix an issue where the audio tracks menu in the video player is unavailable).
151+
- Enhanced now uses OpenGL on Windows/Linux but not macOS, since OpenGL is not well optimized on macOS and caused performance issues.
152+
153+
*Note: I don't have a mac so I'm not sure if this will introduce more issues. Feel free to report any issues you encounter.*
154+
- **Updated Electron to 37**:
155+
- [Electron 36 on Linux experienced conflicts between GTK 2/3 and GTK 4 libraries](https://github.com/REVENGE977/stremio-enhanced/issues/37). This should fix that issue.
156+
157+
**As always the app isn't signed so if you're on macOS you'll have to bypass Gatekeeper. Signing would cost me 99 USD per year..**
158+
159+
To bypass, you should right-click the app and choose “Open” for first time you open the app (instead of double clicking) or run this command in terminal:
160+
161+
```sh
162+
xattr -cr /path/to/Stremio.Enhanced.app
163+
```
164+
165+
or if that doesn't work try this:
166+
```sh
167+
xattr -d com.apple.quarantine /path/to/Stremio.Enhanced.app
168+
```
169+
170+
*I've only tested this version on Windows and Linux. I don't have a mac and macOS VMs suck.*

images/communitytab.png

86.6 KB
Loading

0 commit comments

Comments
 (0)