diff --git a/main/background.ts b/main/background.ts
index c10464a2..c4b118f5 100644
--- a/main/background.ts
+++ b/main/background.ts
@@ -3,6 +3,7 @@ import serve from "electron-serve";
import createWindow from "./helpers/createWindow";
import getPort from "get-port";
import { name } from "../package.json";
+const { autoUpdater } = require("electron-updater");
// import modules
import { setMenu } from "./modules/menu";
@@ -14,7 +15,6 @@ import { createServer, closeServer } from "./server";
import client from "./utils/webtorrent";
import { cleanup } from "./modules/cast";
import { EventEmitter } from "events";
-import { checkForUpdate } from "./utils/checkForUpdate";
EventEmitter.defaultMaxListeners = 0;
@@ -33,8 +33,7 @@ if (app.isPackaged) {
async function _createWindow() {
await app.whenReady();
-
- await checkForUpdate();
+ await autoUpdater.checkForUpdatesAndNotify();
const apiPort = await getPort({
port: getPort.makeRange(3000, 3010),
diff --git a/main/utils/checkForUpdate.ts b/main/utils/checkForUpdate.ts
deleted file mode 100644
index 9e311c79..00000000
--- a/main/utils/checkForUpdate.ts
+++ /dev/null
@@ -1,29 +0,0 @@
-import axios from "axios";
-import semver from "semver";
-import { version } from "../../package.json";
-import { dialog, shell, app } from "electron";
-
-export async function checkForUpdate() {
- try {
- const { data } = await axios.get(
- "https://api.github.com/repos/ritz078/snape/releases/latest"
- );
-
- const { html_url, name } = data;
-
- if (semver.gt(name, version)) {
- const { response } = await dialog.showMessageBox({
- title: "Update Available",
- buttons: ["Download now", "Remind me later"],
- message: `A new version of Snape is available. Please update to the latest release.`,
- defaultId: 0,
- cancelId: 1,
- });
-
- if (response === 0) {
- await shell.openExternal(html_url);
- app.quit();
- }
- }
- } catch (e) {}
-}
diff --git a/package.json b/package.json
index d34d95b3..d0078a95 100644
--- a/package.json
+++ b/package.json
@@ -28,7 +28,6 @@
"internal-ip": "^6.0.0",
"mime": "^2.4.4",
"range-parser": "^1.2.1",
- "semver": "^7.3.2",
"vlc-command": "^1.2.0",
"webtorrent": "0.108.1"
},
@@ -48,6 +47,7 @@
"electron": "^8.2.3",
"electron-builder": "^22.5.1",
"electron-notarize": "^0.3.0",
+ "electron-updater": "^4.2.5",
"husky": "^4.2.3",
"imagemin-lint-staged": "^0.4.0",
"lint-staged": "^10.1.7",
diff --git a/website/src/pages/index.tsx b/website/src/pages/index.tsx
index 12194f5c..6293c4ce 100644
--- a/website/src/pages/index.tsx
+++ b/website/src/pages/index.tsx
@@ -67,18 +67,19 @@ export default () => {
-
-
- {(src) => (
+
+
+ {(src) => (
+
+
+ )}
+