diff --git a/.gitignore b/.gitignore
index fb2571f31..313de1d62 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,4 @@ server*.log
*.bmp
*.zwc*
/all.json
+/temp
diff --git a/recipes/hastebin/icon.svg b/recipes/hastebin/icon.svg
new file mode 100644
index 000000000..ff0c1d765
--- /dev/null
+++ b/recipes/hastebin/icon.svg
@@ -0,0 +1,35 @@
+
+
\ No newline at end of file
diff --git a/recipes/hastebin/index.js b/recipes/hastebin/index.js
new file mode 100644
index 000000000..dd41f7287
--- /dev/null
+++ b/recipes/hastebin/index.js
@@ -0,0 +1 @@
+module.exports = Ferdium => Ferdium;
diff --git a/recipes/hastebin/package.json b/recipes/hastebin/package.json
new file mode 100644
index 000000000..00751352f
--- /dev/null
+++ b/recipes/hastebin/package.json
@@ -0,0 +1,9 @@
+{
+ "id": "hastebin",
+ "name": "Hastebin",
+ "version": "1.0.0",
+ "license": "MIT",
+ "config": {
+ "serviceURL": "https://www.toptal.com/developers/hastebin"
+ }
+}
diff --git a/recipes/hastebin/webview.js b/recipes/hastebin/webview.js
new file mode 100644
index 000000000..84d1b0370
--- /dev/null
+++ b/recipes/hastebin/webview.js
@@ -0,0 +1,16 @@
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : { default: obj };
+}
+
+const _path = _interopRequireDefault(require('path'));
+
+module.exports = Ferdium => {
+ // TODO: If your Hastebin service has unread messages, uncomment these lines to implement the logic for updating the badges
+ // const getMessages = () => {
+ // // TODO: Insert your notification-finding code here
+ // Ferdium.setBadge(0, 0);
+ // };
+ // Ferdium.loop(getMessages);
+
+ Ferdium.injectCSS(_path.default.join(__dirname, 'service.css'));
+};
diff --git a/recipes/jsoncrack/icon.svg b/recipes/jsoncrack/icon.svg
new file mode 100644
index 000000000..b6cb97f24
--- /dev/null
+++ b/recipes/jsoncrack/icon.svg
@@ -0,0 +1,17 @@
+
+
\ No newline at end of file
diff --git a/recipes/jsoncrack/index.js b/recipes/jsoncrack/index.js
new file mode 100644
index 000000000..dd41f7287
--- /dev/null
+++ b/recipes/jsoncrack/index.js
@@ -0,0 +1 @@
+module.exports = Ferdium => Ferdium;
diff --git a/recipes/jsoncrack/package.json b/recipes/jsoncrack/package.json
new file mode 100644
index 000000000..f764fc001
--- /dev/null
+++ b/recipes/jsoncrack/package.json
@@ -0,0 +1,9 @@
+{
+ "id": "jsoncrack",
+ "name": "JSON Crack",
+ "version": "1.0.0",
+ "license": "MIT",
+ "config": {
+ "serviceURL": "https://app.jsoncrack.com/"
+ }
+}
diff --git a/recipes/jsoncrack/webview.js b/recipes/jsoncrack/webview.js
new file mode 100644
index 000000000..8013f6e6e
--- /dev/null
+++ b/recipes/jsoncrack/webview.js
@@ -0,0 +1,16 @@
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : { default: obj };
+}
+
+const _path = _interopRequireDefault(require('path'));
+
+module.exports = Ferdium => {
+ // TODO: If your JSON Crack service has unread messages, uncomment these lines to implement the logic for updating the badges
+ // const getMessages = () => {
+ // // TODO: Insert your notification-finding code here
+ // Ferdium.setBadge(0, 0);
+ // };
+ // Ferdium.loop(getMessages);
+
+ Ferdium.injectCSS(_path.default.join(__dirname, 'service.css'));
+};
diff --git a/recipes/pastebin/icon.svg b/recipes/pastebin/icon.svg
new file mode 100644
index 000000000..341fbd810
--- /dev/null
+++ b/recipes/pastebin/icon.svg
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/recipes/pastebin/index.js b/recipes/pastebin/index.js
new file mode 100644
index 000000000..dd41f7287
--- /dev/null
+++ b/recipes/pastebin/index.js
@@ -0,0 +1 @@
+module.exports = Ferdium => Ferdium;
diff --git a/recipes/pastebin/package.json b/recipes/pastebin/package.json
new file mode 100644
index 000000000..066976be0
--- /dev/null
+++ b/recipes/pastebin/package.json
@@ -0,0 +1,9 @@
+{
+ "id": "pastebin",
+ "name": "Pastebin",
+ "version": "1.0.0",
+ "license": "MIT",
+ "config": {
+ "serviceURL": "https://pastebin.com/"
+ }
+}
diff --git a/recipes/pastebin/webview.js b/recipes/pastebin/webview.js
new file mode 100644
index 000000000..8ebe88e4f
--- /dev/null
+++ b/recipes/pastebin/webview.js
@@ -0,0 +1,16 @@
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : { default: obj };
+}
+
+const _path = _interopRequireDefault(require('path'));
+
+module.exports = Ferdium => {
+ // TODO: If your Pastebin service has unread messages, uncomment these lines to implement the logic for updating the badges
+ // const getMessages = () => {
+ // // TODO: Insert your notification-finding code here
+ // Ferdium.setBadge(0, 0);
+ // };
+ // Ferdium.loop(getMessages);
+
+ Ferdium.injectCSS(_path.default.join(__dirname, 'service.css'));
+};
diff --git a/recipes/phanpy/icon.svg b/recipes/phanpy/icon.svg
new file mode 100644
index 000000000..ab1e12c9d
--- /dev/null
+++ b/recipes/phanpy/icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/recipes/phanpy/index.js b/recipes/phanpy/index.js
new file mode 100644
index 000000000..dd41f7287
--- /dev/null
+++ b/recipes/phanpy/index.js
@@ -0,0 +1 @@
+module.exports = Ferdium => Ferdium;
diff --git a/recipes/phanpy/package.json b/recipes/phanpy/package.json
new file mode 100644
index 000000000..506e1f80b
--- /dev/null
+++ b/recipes/phanpy/package.json
@@ -0,0 +1,9 @@
+{
+ "id": "phanpy",
+ "name": "Phanpy",
+ "version": "1.0.0",
+ "license": "MIT",
+ "config": {
+ "serviceURL": "https://phanpy.social/"
+ }
+}
diff --git a/recipes/phanpy/webview.js b/recipes/phanpy/webview.js
new file mode 100644
index 000000000..398db7ad2
--- /dev/null
+++ b/recipes/phanpy/webview.js
@@ -0,0 +1,16 @@
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : { default: obj };
+}
+
+const _path = _interopRequireDefault(require('path'));
+
+module.exports = Ferdium => {
+ // TODO: If your Phanpy service has unread messages, uncomment these lines to implement the logic for updating the badges
+ // const getMessages = () => {
+ // // TODO: Insert your notification-finding code here
+ // Ferdium.setBadge(0, 0);
+ // };
+ // Ferdium.loop(getMessages);
+
+ Ferdium.injectCSS(_path.default.join(__dirname, 'service.css'));
+};
diff --git a/recipes/replit/icon.svg b/recipes/replit/icon.svg
new file mode 100644
index 000000000..8092e7b31
--- /dev/null
+++ b/recipes/replit/icon.svg
@@ -0,0 +1,20 @@
+
+
\ No newline at end of file
diff --git a/recipes/replit/index.js b/recipes/replit/index.js
new file mode 100644
index 000000000..dd41f7287
--- /dev/null
+++ b/recipes/replit/index.js
@@ -0,0 +1 @@
+module.exports = Ferdium => Ferdium;
diff --git a/recipes/replit/package.json b/recipes/replit/package.json
new file mode 100644
index 000000000..24356343f
--- /dev/null
+++ b/recipes/replit/package.json
@@ -0,0 +1,9 @@
+{
+ "id": "replit",
+ "name": "Replit",
+ "version": "1.0.0",
+ "license": "MIT",
+ "config": {
+ "serviceURL": "https://replit.com/login"
+ }
+}
diff --git a/recipes/replit/webview.js b/recipes/replit/webview.js
new file mode 100644
index 000000000..c8b1dcb56
--- /dev/null
+++ b/recipes/replit/webview.js
@@ -0,0 +1,16 @@
+function _interopRequireDefault(obj) {
+ return obj && obj.__esModule ? obj : { default: obj };
+}
+
+const _path = _interopRequireDefault(require('path'));
+
+module.exports = Ferdium => {
+ // TODO: If your Replit service has unread messages, uncomment these lines to implement the logic for updating the badges
+ // const getMessages = () => {
+ // // TODO: Insert your notification-finding code here
+ // Ferdium.setBadge(0, 0);
+ // };
+ // Ferdium.loop(getMessages);
+
+ Ferdium.injectCSS(_path.default.join(__dirname, 'service.css'));
+};
diff --git a/recipes/zoom/package.json b/recipes/zoom/package.json
index 2410e45ce..3fdf6ce14 100644
--- a/recipes/zoom/package.json
+++ b/recipes/zoom/package.json
@@ -1,10 +1,10 @@
{
"id": "zoom",
"name": "Zoom",
- "version": "1.4.1",
+ "version": "1.4.2",
"license": "MIT",
"config": {
- "serviceURL": "https://zoom.us/join",
+ "serviceURL": "https://app.zoom.us/wc/home",
"hasNotificationSound": true
}
}