about summary refs log tree commit diff stats
path: root/src/pages/options
diff options
context:
space:
mode:
Diffstat (limited to 'src/pages/options')
-rw-r--r--src/pages/options/general/general.html207
-rw-r--r--src/pages/options/general/general.pug176
-rw-r--r--src/pages/options/imgur/imgur.html150
-rw-r--r--src/pages/options/imgur/imgur.pug44
-rw-r--r--src/pages/options/index.html1712
-rw-r--r--src/pages/options/index.js24
-rw-r--r--src/pages/options/index.pug32
-rw-r--r--src/pages/options/init.js56
-rw-r--r--src/pages/options/instagram/instagram.html128
-rw-r--r--src/pages/options/instagram/instagram.pug37
-rw-r--r--src/pages/options/lbry/lbry.html128
-rw-r--r--src/pages/options/lbry/lbry.pug36
-rw-r--r--src/pages/options/maps/maps.html107
-rw-r--r--src/pages/options/maps/maps.pug33
-rw-r--r--src/pages/options/medium/medium.html128
-rw-r--r--src/pages/options/medium/medium.pug36
-rw-r--r--src/pages/options/peertube/peertube.html128
-rw-r--r--src/pages/options/peertube/peertube.pug36
-rw-r--r--src/pages/options/reddit/reddit.html187
-rw-r--r--src/pages/options/reddit/reddit.pug52
-rw-r--r--src/pages/options/search/search.html309
-rw-r--r--src/pages/options/search/search.pug78
-rw-r--r--src/pages/options/sendTargets/sendTargets.html128
-rw-r--r--src/pages/options/sendTargets/sendTargets.pug36
-rw-r--r--src/pages/options/tiktok/tiktok.html128
-rw-r--r--src/pages/options/tiktok/tiktok.pug36
-rw-r--r--src/pages/options/translate/translate.html186
-rw-r--r--src/pages/options/translate/translate.pug50
-rw-r--r--src/pages/options/twitter/twitter.html128
-rw-r--r--src/pages/options/twitter/twitter.pug37
-rw-r--r--src/pages/options/widgets/general.js (renamed from src/pages/options/general/general.js)37
-rw-r--r--src/pages/options/widgets/general.pug167
-rw-r--r--src/pages/options/widgets/imgur.js (renamed from src/pages/options/imgur/imgur.js)4
-rw-r--r--src/pages/options/widgets/imgur.pug32
-rw-r--r--src/pages/options/widgets/instagram.js (renamed from src/pages/options/instagram/instagram.js)4
-rw-r--r--src/pages/options/widgets/instagram.pug27
-rw-r--r--src/pages/options/widgets/lbry.js (renamed from src/pages/options/lbry/lbry.js)4
-rw-r--r--src/pages/options/widgets/lbry.pug26
-rw-r--r--src/pages/options/widgets/maps.js (renamed from src/pages/options/maps/maps.js)4
-rw-r--r--src/pages/options/widgets/maps.pug23
-rw-r--r--src/pages/options/widgets/medium.js (renamed from src/pages/options/medium/medium.js)4
-rw-r--r--src/pages/options/widgets/medium.pug26
-rw-r--r--src/pages/options/widgets/peertube.js (renamed from src/pages/options/peertube/peertube.js)4
-rw-r--r--src/pages/options/widgets/peertube.pug26
-rw-r--r--src/pages/options/widgets/reddit.js (renamed from src/pages/options/reddit/reddit.js)4
-rw-r--r--src/pages/options/widgets/reddit.pug42
-rw-r--r--src/pages/options/widgets/search.js (renamed from src/pages/options/search/search.js)4
-rw-r--r--src/pages/options/widgets/search.pug69
-rw-r--r--src/pages/options/widgets/sendTargets.js (renamed from src/pages/options/sendTargets/sendTargets.js)4
-rw-r--r--src/pages/options/widgets/sendTargets.pug26
-rw-r--r--src/pages/options/widgets/tiktok.js (renamed from src/pages/options/tiktok/tiktok.js)6
-rw-r--r--src/pages/options/widgets/tiktok.pug26
-rw-r--r--src/pages/options/widgets/translate.js (renamed from src/pages/options/translate/translate.js)4
-rw-r--r--src/pages/options/widgets/translate.pug40
-rw-r--r--src/pages/options/widgets/twitter.js (renamed from src/pages/options/twitter/twitter.js)4
-rw-r--r--src/pages/options/widgets/twitter.pug26
-rw-r--r--src/pages/options/widgets/wikipedia.js (renamed from src/pages/options/wikipedia/wikipedia.js)6
-rw-r--r--src/pages/options/widgets/wikipedia.pug32
-rw-r--r--src/pages/options/widgets/youtube.js (renamed from src/pages/options/youtube/youtube.js)4
-rw-r--r--src/pages/options/widgets/youtube.pug73
-rw-r--r--src/pages/options/widgets/youtubeMusic.js (renamed from src/pages/options/youtubeMusic/youtubeMusic.js)4
-rw-r--r--src/pages/options/widgets/youtubeMusic.pug17
-rw-r--r--src/pages/options/wikipedia/wikipedia.html150
-rw-r--r--src/pages/options/wikipedia/wikipedia.pug41
-rw-r--r--src/pages/options/youtube/youtube.html263
-rw-r--r--src/pages/options/youtube/youtube.pug83
-rw-r--r--src/pages/options/youtubeMusic/youtubeMusic.html100
-rw-r--r--src/pages/options/youtubeMusic/youtubeMusic.pug27
68 files changed, 2524 insertions, 3472 deletions
diff --git a/src/pages/options/general/general.html b/src/pages/options/general/general.html
deleted file mode 100644
index 8dd60184..00000000
--- a/src/pages/options/general/general.html
+++ /dev/null
@@ -1,207 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>General</title>
-  </head>
-</html>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a class="selected" href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>General</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_theme__">Theme</h4>
-      <select id="theme">
-        <option value="DEFAULT" data-localise="__MSG_system__">System</option>
-        <option value="light" data-localise="__MSG_light__">Light</option>
-        <option value="dark" data-localise="__MSG_dark__">Dark</option>
-      </select>
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_autoRedirect__">Auto Redirect of offline instances</h4>
-      <input id="auto-redirect" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_exceptions__">Exceptions</h4>
-    </div>
-    <form id="custom-exceptions-instance-form">
-      <div class="some-block option-block">
-        <div class="some-block" style="padding:0;">
-          <input id="exceptions-custom-instance" placeholder="https://www.google.com" type="url">&nbsp;
-          <select id="exceptions-custom-instance-type">
-            <option value="url">URL</option>
-            <option value="regex">Regex</option>
-          </select>&nbsp;
-        </div>
-        <button class="add" id="exceptions-add-instance" type="submit">
-          <svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-            <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-          </svg>
-        </button>
-      </div>
-    </form>
-    <div class="checklist" id="exceptions-custom-checklist"></div>
-    <div class="buttons buttons-inline"><a class="button button-inline" id="update-instances">
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path>
-        </svg>
-        <x data-localise="__MSG_updateInstances__">Update Instances</x></a>&nbsp; &nbsp;
-      <label class="button button-inline" id="import_settings_text" for="import-settings"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-        </svg>&nbsp;
-        <x data-localise="__MSG_importSettings__">Import Settings</x>
-      </label>
-      <input class="button button-inline" id="import-settings" type="file" style="display:none;">&nbsp; &nbsp;<a class="button button-inline" id="export-settings">
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"></path>
-        </svg>&nbsp;
-        <x data-localise="__MSG_exportSettings__">Export Settings</x></a>&nbsp; &nbsp;<a class="button button-inline" id="reset-settings">
-        <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12,5V2L8,6l4,4V7c3.31,0,6,2.69,6,6c0,2.97-2.17,5.43-5,5.91v2.02c3.95-0.49,7-3.85,7-7.93C20,8.58,16.42,5,12,5z"></path>
-          <path d="M6,13c0-1.65,0.67-3.15,1.76-4.24L6.34,7.34C4.9,8.79,4,10.79,4,13c0,4.08,3.05,7.44,7,7.93v-2.02 C8.17,18.43,6,15.97,6,13z"></path>
-        </svg>
-        <x data-localise="__MSG_resetSettings__">Reset Settings</x></a>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_customPopup__">Customize Popup</h4>
-    </div>
-    <div class="checklist-popup" id="popup-frontends-checklist">
-      <div>
-        <div><img src="../../../assets/images/youtube-icon.png">YouTube</div>
-        <input id="youtube" type="checkbox">
-      </div>
-      <div>
-        <div><img src="../../../assets/images/youtube-music-icon.png">YoutubeMusic</div>
-        <input id="youtubeMusic" type="checkbox">
-      </div>
-      <div>
-        <div><img src="../../../assets/images/twitter-icon.png">Twitter</div>
-        <input id="twitter" type="checkbox">
-      </div>
-      <div>
-        <div> <img src="../../../assets/images/instagram-icon.png">Instagram</div>
-        <input id="instagram" type="checkbox">
-      </div>
-      <div> 
-        <div> <img src="../../../assets/images/tiktok-icon.png">TikTok</div>
-        <input id="tikTok" type="checkbox">
-      </div>
-      <div> 
-        <div> <img src="../../../assets/images/imgur-icon.png">Imgur</div>
-        <input id="imgur" type="checkbox">
-      </div>
-      <div> 
-        <div> <img src="../../../assets/images/reddit-icon.png">Reddit</div>
-        <input id="reddit" type="checkbox">
-      </div>
-      <div> 
-        <div> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg>Search
-        </div>
-        <input id="search" type="checkbox">
-      </div>
-      <div> 
-        <div> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg>Translate
-        </div>
-        <input id="translate" type="checkbox">
-      </div>
-      <div> 
-        <div> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg>Maps
-        </div>
-        <input id="maps" type="checkbox">
-      </div>
-      <div> 
-        <div> <img src="../../../assets/images/wikipedia-icon.svg">Wikipedia</div>
-        <input id="wikipedia" type="checkbox">
-      </div>
-      <div> 
-        <div> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg>Medium
-        </div>
-        <input id="medium" type="checkbox">
-      </div>
-      <div> 
-        <div> <img src="../../../assets/images/peertube-icon.svg">PeerTube</div>
-        <input id="peertube" type="checkbox">
-      </div>
-      <div> 
-        <div> <img src="../../../assets/images/lbry-icon.png">LBRY/Odysee</div>
-        <input id="lbry" type="checkbox">
-      </div>
-      <div> 
-        <div> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg>Send Files
-        </div>
-        <input id="sendTargets" type="checkbox">
-      </div>
-    </div>
-    <script type="module" src="../init.js"></script>
-    <script type="module" src="./general.js"></script>
-    <script type="module" src="../../../assets/javascripts/localise.js"></script>
-  </section>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/general/general.pug b/src/pages/options/general/general.pug
deleted file mode 100644
index 3d35c311..00000000
--- a/src/pages/options/general/general.pug
+++ /dev/null
@@ -1,176 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title General
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('general')
-
-    section.option-block
-        .some-block.option-block
-            h1 General
-        hr
-
-        .some-block.option-block
-            h4(data-localise="__MSG_theme__") Theme
-            select#theme
-                option(value="DEFAULT" data-localise="__MSG_system__") System
-                option(value="light" data-localise="__MSG_light__") Light
-                option(value="dark" data-localise="__MSG_dark__") Dark
-
-        .some-block.option-block
-            h4(data-localise="__MSG_autoRedirect__") Auto Redirect of offline instances
-            input#auto-redirect(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_exceptions__") Exceptions
-
-        form#custom-exceptions-instance-form
-            .some-block.option-block
-                .some-block(style="padding:0;")
-                    input#exceptions-custom-instance(placeholder="https://www.google.com" type="url")
-                    |&nbsp;
-                    select#exceptions-custom-instance-type
-                        option(value="url") URL
-                        option(value="regex") Regex
-                    |&nbsp;
-                button#exceptions-add-instance.add(type="submit")
-                    svg(xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor")
-                        path(d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z")
-
-        #exceptions-custom-checklist.checklist
-
-        .buttons.buttons-inline
-            a#update-instances.button.button-inline
-                svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-                    path(d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z")
-                x(data-localise="__MSG_updateInstances__") Update Instances
-
-            |&nbsp; &nbsp;
-
-            label#import_settings_text.button.button-inline(for="import-settings") 
-                svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-                    path(d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z")
-                |&nbsp;
-                x(data-localise="__MSG_importSettings__") Import Settings
-            input#import-settings.button.button-inline(type="file" style="display:none;")
-
-            |&nbsp; &nbsp;
-
-            a#export-settings.button.button-inline
-                svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-                    path(d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z")
-                |&nbsp;
-                x(data-localise="__MSG_exportSettings__") Export Settings
-
-            |&nbsp; &nbsp;
-
-            a#reset-settings.button.button-inline
-                svg(xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-                    path(d="M12,5V2L8,6l4,4V7c3.31,0,6,2.69,6,6c0,2.97-2.17,5.43-5,5.91v2.02c3.95-0.49,7-3.85,7-7.93C20,8.58,16.42,5,12,5z")
-                    path(d="M6,13c0-1.65,0.67-3.15,1.76-4.24L6.34,7.34C4.9,8.79,4,10.79,4,13c0,4.08,3.05,7.44,7,7.93v-2.02 C8.17,18.43,6,15.97,6,13z")
-                x(data-localise="__MSG_resetSettings__") Reset Settings
-        hr
-
-        .some-block.option-block
-            h4(data-localise="__MSG_customPopup__") Customize Popup
-
-        #popup-frontends-checklist.checklist-popup
-            div
-                div
-                    img(src="../../../assets/images/youtube-icon.png")
-                    |YouTube
-                input#youtube(type="checkbox")
-            div
-                div
-                    img(src="../../../assets/images/youtube-music-icon.png")
-                    |YoutubeMusic
-                input#youtubeMusic(type="checkbox")
-            div
-                div
-                    img(src="../../../assets/images/twitter-icon.png")
-                    |Twitter
-                input#twitter(type="checkbox")
-
-            div
-                div 
-                    img(src="../../../assets/images/instagram-icon.png")
-                    |Instagram
-                input#instagram(type="checkbox")
-
-            div 
-                div 
-                    img(src="../../../assets/images/tiktok-icon.png")
-                    |TikTok
-                input#tikTok(type="checkbox")
-
-            div 
-                div 
-                    img(src="../../../assets/images/imgur-icon.png")
-                    |Imgur
-                input#imgur(type="checkbox")
-
-            div 
-                div 
-                    img(src="../../../assets/images/reddit-icon.png")
-                    |Reddit
-                input#reddit(type="checkbox")
-
-            div 
-                div 
-                    svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor")
-                        path(d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z")
-                    |Search
-                input#search(type="checkbox")
-
-            div 
-                div 
-                    svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor")
-                        path(d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z")
-                    |Translate
-                input#translate(type="checkbox")
-
-            div 
-                div 
-                    svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor")
-                        path(d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z")
-                    |Maps
-                input#maps(type="checkbox")
-
-            div 
-                div 
-                    img(src="../../../assets/images/wikipedia-icon.svg")
-                    |Wikipedia
-                input#wikipedia(type="checkbox")
-
-            div 
-                div 
-                    svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor")
-                        circle(cx="500" cy="500" r="500")
-                        ellipse(ry="475" rx="250" cy="501" cx="1296")
-                        ellipse(cx="1682" cy="502" rx="88" ry="424")
-                    |Medium
-                input#medium(type="checkbox")
-
-            div 
-                div 
-                    img(src="../../../assets/images/peertube-icon.svg")
-                    |PeerTube
-                input#peertube(type="checkbox")
-
-            div 
-                div 
-                    img(src="../../../assets/images/lbry-icon.png")
-                    |LBRY/Odysee
-                input#lbry(type="checkbox")
-
-            div 
-                div 
-                    svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-                        path(d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z")
-                    |Send Files
-                input#sendTargets(type="checkbox")
-
-        script(type="module" src="../init.js")
-        script(type="module" src="./general.js")
-        script(type="module" src="../../../assets/javascripts/localise.js")
\ No newline at end of file
diff --git a/src/pages/options/imgur/imgur.html b/src/pages/options/imgur/imgur.html
deleted file mode 100644
index 78730edc..00000000
--- a/src/pages/options/imgur/imgur.html
+++ /dev/null
@@ -1,150 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Imgur</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a class="selected" href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Imgur</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-imgur" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-        <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
-      </select>
-    </div>
-    <div id="rimgo">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://rimgo.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://rimgo.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-      <div class="i2p">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://rimgo.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./imgur.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/imgur/imgur.pug b/src/pages/options/imgur/imgur.pug
deleted file mode 100644
index 3dacdec8..00000000
--- a/src/pages/options/imgur/imgur.pug
+++ /dev/null
@@ -1,44 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Imgur
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('imgur')
-
-    section.option-block
-        .some-block.option-block
-            h1 Imgur
-        hr
-
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-imgur(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-                option(value="i2p" data-localise="__MSG_i2p__") I2P
-
-        #rimgo
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://rimgo.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://rimgo.onion')
-
-            .i2p
-                include ../../widgets/instances.pug
-                +instances('https://rimgo.onion')
-
-
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./imgur.js")
\ No newline at end of file
diff --git a/src/pages/options/index.html b/src/pages/options/index.html
new file mode 100644
index 00000000..42553e37
--- /dev/null
+++ b/src/pages/options/index.html
@@ -0,0 +1,1712 @@
+<!DOCTYPE html>
+<html id="elementToShowWithJavaScript" lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
+    <link href="../stylesheets/styles.css" rel="stylesheet">
+    <title>General</title>
+    <script type="module" src="./init.js"></script>
+  </head>
+  <body class="option" dir="auto">
+        <section class="links" id="links">
+          <div class="title">
+                <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
+                  <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
+                </svg><a href="#general" data-localise="__MSG_general__">General</a>
+          </div>
+          <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="#youtube" data-localise="__MSG_youtube__">YouTube </a></div>
+          <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="#youtubeMusic" data-localise="__MSG_ytmusic__">YT Music</a></div>
+          <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="#twitter" data-localise="__MSG_twitter__">Twitter</a></div>
+          <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="#instagram" data-localise="__MSG_instagram__">Instagram</a></div>
+          <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="#tiktok" data-localise="__MSG_tiktok__">TikTok</a></div>
+          <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="#reddit" data-localise="__MSG_reddit__">Reddit</a></div>
+          <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="#imgur" data-localise="__MSG_imgur__">Imgur</a></div>
+          <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="#wikipedia" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
+          <div class="title"> 
+                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+                  <circle cx="500" cy="500" r="500"></circle>
+                  <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+                  <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+                </svg><a href="#medium" data-localise="__MSG_medium__">Medium</a>
+          </div>
+          <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="#peertube" data-localise="__MSG_peertube__">PeerTube</a></div>
+          <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="#lbry" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
+          <div class="title"> 
+                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
+                  <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
+                </svg><a href="#search" data-localise="__MSG_search__">Search</a>
+          </div>
+          <div class="title"> 
+                <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                  <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
+                </svg><a href="#translate" data-localise="__MSG_translate__">Translate</a>
+          </div>
+          <div class="title"> 
+                <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                  <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
+                </svg><a href="#maps" data-localise="__MSG_maps__">Maps</a>
+          </div>
+          <div class="title"> 
+                <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                  <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
+                </svg><a href="#sendTargets" data-localise="__MSG_sendFiles__">Send Files</a>
+          </div>
+        </section>
+    <div id="pages">
+      <section class="option-block" id="general_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_general__">General</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_theme__">Theme</h4>
+          <select id="theme">
+            <option value="DEFAULT" data-localise="__MSG_system__">System</option>
+            <option value="light" data-localise="__MSG_light__">Light</option>
+            <option value="dark" data-localise="__MSG_dark__">Dark</option>
+          </select>
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_autoRedirect__"></h4>
+          <input id="auto-redirect" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_exceptions__"></h4>
+        </div>
+        <form id="custom-exceptions-instance-form">
+          <div class="some-block option-block">
+            <div class="some-block" style="padding:0;">
+              <input id="exceptions-custom-instance" placeholder="https://www.google.com" type="url">&nbsp;
+              <select id="exceptions-custom-instance-type">
+                <option value="url">URL</option>
+                <option value="regex">Regex</option>
+              </select>&nbsp;
+            </div>
+            <button class="add" id="exceptions-add-instance" type="submit">
+              <svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+              </svg>
+            </button>
+          </div>
+        </form>
+        <div class="checklist" id="exceptions-custom-checklist"></div>
+        <div class="buttons buttons-inline"><a class="button button-inline" id="update-instances">
+            <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+              <path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"></path>
+            </svg>
+            <x data-localise="__MSG_updateInstances__">Update Instances</x></a>&nbsp; &nbsp;
+          <label class="button button-inline" id="import_settings_text" for="import-settings"> 
+            <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+              <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+            </svg>&nbsp;
+            <x data-localise="__MSG_importSettings__">Import Settings</x>
+          </label>
+          <input class="button button-inline" id="import-settings" type="file" style="display:none;">&nbsp; &nbsp;<a class="button button-inline" id="export-settings">
+            <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+              <path d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"></path>
+            </svg>&nbsp;
+            <x data-localise="__MSG_exportSettings__">Export Settings</x></a>&nbsp; &nbsp;<a class="button button-inline" id="reset-settings">
+            <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+              <path d="M12,5V2L8,6l4,4V7c3.31,0,6,2.69,6,6c0,2.97-2.17,5.43-5,5.91v2.02c3.95-0.49,7-3.85,7-7.93C20,8.58,16.42,5,12,5z"></path>
+              <path d="M6,13c0-1.65,0.67-3.15,1.76-4.24L6.34,7.34C4.9,8.79,4,10.79,4,13c0,4.08,3.05,7.44,7,7.93v-2.02 C8.17,18.43,6,15.97,6,13z"></path>
+            </svg>
+            <x data-localise="__MSG_resetSettings__">Reset Settings</x></a>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_customPopup__">Customize Popup</h4>
+        </div>
+        <div class="checklist-popup" id="popup-frontends-checklist">
+          <div>
+            <div><img src="../../../assets/images/youtube-icon.png">
+              <x data-localise="__MSG_youtube__">YouTube</x>
+            </div>
+            <input id="youtube" type="checkbox">
+          </div>
+          <div>
+            <div><img src="../../../assets/images/youtube-music-icon.png">
+              <x data-localise="__MSG_ytmusic__">YoutubeMusic</x>
+            </div>
+            <input id="youtubeMusic" type="checkbox">
+          </div>
+          <div>
+            <div><img src="../../../assets/images/twitter-icon.png">
+              <x data-localise="__MSG_twitter__">Twitter</x>
+            </div>
+            <input id="twitter" type="checkbox">
+          </div>
+          <div>
+            <div> <img src="../../../assets/images/instagram-icon.png">
+              <x data-localise="__MSG_instagram__">Instagram</x>
+            </div>
+            <input id="instagram" type="checkbox">
+          </div>
+          <div> 
+            <div> <img src="../../../assets/images/tiktok-icon.png">
+              <x data-localise="__MSG_tiktok__">TikTok</x>
+            </div>
+            <input id="tikTok" type="checkbox">
+          </div>
+          <div> 
+            <div> <img src="../../../assets/images/imgur-icon.png">
+              <x data-localise="__MSG_imgur__">Imgur</x>
+            </div>
+            <input id="imgur" type="checkbox">
+          </div>
+          <div> 
+            <div> <img src="../../../assets/images/reddit-icon.png">
+              <x data-localise="__MSG_reddit__">Reddit</x>
+            </div>
+            <input id="reddit" type="checkbox">
+          </div>
+          <div> 
+            <div> 
+              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
+                <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
+              </svg>
+              <x data-localise="__MSG_search__">Search</x>
+            </div>
+            <input id="search" type="checkbox">
+          </div>
+          <div> 
+            <div> 
+              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
+                <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
+              </svg>
+              <x data-localise="__MSG_translate__">Translate</x>
+            </div>
+            <input id="translate" type="checkbox">
+          </div>
+          <div> 
+            <div> 
+              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
+                <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
+              </svg>
+              <x data-localise="__MSG_maps__">Maps</x>
+            </div>
+            <input id="maps" type="checkbox">
+          </div>
+          <div> 
+            <div> <img src="../../../assets/images/wikipedia-icon.svg">
+              <x data-localise="__MSG_wikipedia__">Wikipedia</x>
+            </div>
+            <input id="wikipedia" type="checkbox">
+          </div>
+          <div> 
+            <div> 
+              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+                <circle cx="500" cy="500" r="500"></circle>
+                <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+                <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+              </svg>
+              <x data-localise="__MSG_medium__">Medium</x>
+            </div>
+            <input id="medium" type="checkbox">
+          </div>
+          <div> 
+            <div> <img src="../../../assets/images/peertube-icon.svg">
+              <x data-localise="__MSG_peertube__">PeerTube</x>
+            </div>
+            <input id="peertube" type="checkbox">
+          </div>
+          <div> 
+            <div> <img src="../../../assets/images/lbry-icon.png">
+              <x data-localise="__MSG_lbry__">LBRY/Odysee</x>
+            </div>
+            <input id="lbry" type="checkbox">
+          </div>
+          <div> 
+            <div> 
+              <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
+              </svg>
+              <x data-localise="__MSG_sendFiles__">Send Files</x>
+            </div>
+            <input id="sendTargets" type="checkbox">
+          </div>
+        </div>
+        <script type="module" src="./widgets/general.js"></script>
+      </section>
+      <section class="option-block" id="youtube_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_youtube__">YouTube</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-invidious" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_frontend__">Frontend</h4>
+          <select id="youtube-frontend">
+            <option value="invidious">Invidious</option>
+            <option value="piped">Piped</option>
+            <option value="pipedMaterial">Piped-Material</option>
+            <option value="freetube">FreeTube</option>
+            <option value="yatte">Yattee</option>
+          </select>
+        </div>
+        <div id="freetube-yatte">
+          <div class="some-block option-block">
+            <h4 data-localise="__MSG_embeddedVids__">Embedded Videos Frontend</h4>
+            <select id="youtube-embed-frontend">
+              <option value="invidious">Invidious</option>
+              <option value="piped">Piped</option>
+              <option value="pipedMaterial">Piped-Material</option>
+              <option value="youtube">Youtube</option>
+            </select>
+          </div>
+        </div>
+        <div id="invidious-piped-pipedMaterial">
+          <div class="some-block option-block">
+            <h4 data-localise="__MSG_protocol__">Protocol</h4>
+            <select id="protocol">
+              <option value="normal" data-localise="__MSG_normal__">Normal</option>
+              <option value="tor" data-localise="__MSG_tor__">Tor</option>
+            </select>
+          </div>
+          <div class="some-block option-block">
+            <h4 data-localise="__MSG_redirectType__">Redirect Type</h4>
+            <select id="only-embed">
+              <option value="both" data-localise="__MSG_both__">both</option>
+              <option value="onlyEmbedded" data-localise="__MSG_onlyEmbedded__">Only Embedded</option>
+              <option value="onlyNotEmbedded" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
+            </select>
+          </div>
+        </div>
+        <div id="invidious">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://invidious.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-invidious-label" for="latency-invidious"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-invidious" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://invidious.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <div id="piped">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://piped.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-piped-label" for="latency-piped"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-piped" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://piped.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <div id="pipedMaterial">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://piped-material.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-pipedMaterial-label" for="latency-pipedMaterial"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-pipedMaterial" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://piped-material.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/youtube.js"></script>
+      </section>
+      <section class="option-block" id="youtubeMusic_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_ytmusic__">YouTube Music</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-beatbump" type="checkbox">
+        </div>
+        <div id="beatbump">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://beatbump.wewe" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+        </div>
+        <script type="module" src="./widgets/youtubeMusic.js"></script>
+      </section>
+      <section class="option-block" id="twitter_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_twitter__">Twitter</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-nitter" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="nitter">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://nitter.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://nitter.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/twitter.js"></script>
+      </section>
+      <section class="option-block" id="instagram_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_instagram__">Instagram</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-bibliogram" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="bibliogram">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://bibliogram.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://bibliogram.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/instagram.js"></script>
+      </section>
+      <section class="option-block" id="tiktok_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_tiktok__">TikTok</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-tiktok" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="proxiTok">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://proxitok.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://proxitok.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/tiktok.js"></script>
+      </section>
+      <section class="option-block" id="reddit_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_reddit__">Reddit</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-reddit" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 id="frontend" data-localise="__MSG_frontend__">Frontend</h4>
+          <select id="reddit-frontend">
+            <option value="libreddit">Libreddit</option>
+            <option value="teddit">Teddit</option>
+          </select>
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="libreddit">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://libreddit.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-libreddit-label" for="latency-libreddit"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-libreddit" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://libreddit.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <div id="teddit">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://teddit.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-teddit-label" for="latency-teddit"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-teddit" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://teddit.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/reddit.js"></script>
+      </section>
+      <section class="option-block" id="imgur_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_imgur__">Imgur</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-imgur" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+            <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
+          </select>
+        </div>
+        <div id="rimgo">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://rimgo.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://rimgo.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+          <div class="i2p">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://rimgo.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/imgur.js"></script>
+      </section>
+      <section class="option-block" id="wikipedia_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_wikipedia__">Wikipedia</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-wikipedia" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+            <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
+          </select>
+        </div>
+        <div id="wikiless">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://wikiless.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://wikiless.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+          <div class="i2p">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://wikiless.i2p" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/wikipedia.js"></script>
+      </section>
+      <section class="option-block" id="medium_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_medium__">Medium</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-medium" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="scribe">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://scribe.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://scribe.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/medium.js"></script>
+      </section>
+      <section class="option-block" id="peertube_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_peertube__">PeerTube</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-peertube" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="simpleertube">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://simpleertube.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://simpleertube.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/peertube.js"></script>
+      </section>
+      <section class="option-block" id="lbry_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_lbry__">LBRY/Odysee</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-lbry" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="librarian">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://librarian.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://librarian.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/lbry.js"></script>
+      </section>
+      <section class="option-block" id="search_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_search__">Search</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-search" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_frontend__">Frontend</h4>
+          <select id="search-frontend">
+            <option value="searxng">SearXNG</option>
+            <option value="searx">SearX</option>
+            <option value="whoogle">Whoogle</option>
+          </select>
+        </div>
+        <div id="searx-whoogle">
+          <div class="some-block option-block">
+            <h4 data-localise="__MSG_protocol__">Protocol</h4>
+            <select id="protocol">
+              <option value="normal" data-localise="__MSG_normal__">Normal</option>
+              <option value="tor" data-localise="__MSG_tor__">Tor</option>
+              <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
+            </select>
+          </div>
+        </div>
+        <div class="some-block">
+          <h4 data-localise="__MSG_searchNote__">Note: To use Search to its full potential, make LibRedirect as the Default Search Engine</h4>
+        </div>
+        <div id="searx">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://searx.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-searx-label" for="latency-searx"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-searx" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://searx.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+          <div class="i2p">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://searx.i2p" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <div id="searxng">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://searxng.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-searxng-label" for="latency-searxng"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-searxng" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://searxng.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+          <div class="i2p">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://searxng.i2p" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <div id="whoogle">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://whoogle.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-whoogle-label" for="latency-whoogle"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-whoogle" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://whoogle.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+          <div class="i2p">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://whoogle.i2p" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/search.js"></script>
+      </section>
+      <section class="option-block" id="translate_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_translate__">Translate</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-simplyTranslate" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_frontend__">Frontend</h4>
+          <select id="translate-frontend">
+            <option value="simplyTranslate">SimplyTranslate</option>
+            <option value="lingva">Lingva</option>
+          </select>
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <hr>
+        <div id="simplyTranslate">
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://simplytranslate.org" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-simplyTranslate-label" for="latency-simplyTranslate"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-simplyTranslate" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="http://hxecvvetgrznmprg.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <div id="lingva">
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://lingvatranslate.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-lingva-label" for="latency-lingva"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency-lingva" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="http://tyzxppdeoojdnaux.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/translate.js"></script>
+      </section>
+      <section class="option-block" id="maps_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_maps__">Maps</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-osm" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_frontend__">Frontend</h4>
+          <select id="maps-frontend">
+            <option value="osm">OpenStreetMap</option>
+            <option value="facil">Facil Map</option>
+          </select>
+        </div>
+        <div id="facil">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://facilmap.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+        </div>
+        <script type="module" src="./widgets/maps.js"></script>
+      </section>
+      <section class="option-block" id="sendTargets_page">
+        <div class="some-block option-block">
+          <h1 data-localise="__MSG_sendFiles__">Send Files</h1>
+        </div>
+        <hr>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_enable__">Enable</h4>
+          <input id="disable-sendTargets" type="checkbox">
+        </div>
+        <div class="some-block option-block">
+          <h4 data-localise="__MSG_protocol__">Protocol</h4>
+          <select id="protocol">
+            <option value="normal" data-localise="__MSG_normal__">Normal</option>
+            <option value="tor" data-localise="__MSG_tor__">Tor</option>
+          </select>
+        </div>
+        <div id="send">
+          <hr>
+          <div class="normal">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://send.com" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+                        <label class="button button-inline" id="latency-label" for="latency"> 
+                          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
+                            <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
+                          </svg>&nbsp;
+                          <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
+                        </label>
+                        <input class="button button-inline" id="latency" style="display:none;">
+          </div>
+          <div class="tor">
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
+                        </div>
+                        <div class="checklist"></div>
+                        <hr>
+                        <div class="some-block option-block">
+                          <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
+                        </div>
+                        <form class="custom-instance-form">
+                          <div class="some-block option-block">
+                            <input class="custom-instance" placeholder="https://send.onion" type="url">
+                            <button class="add add-instance" type="submit">
+                              <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
+                                <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
+                              </svg>
+                            </button>
+                          </div>
+                        </form>
+                        <div class="checklist custom-checklist"></div>
+          </div>
+        </div>
+        <script type="module" src="./widgets/sendTargets.js"></script>
+      </section>
+    </div>
+  </body>
+  <script type="module" src="./index.js"></script>
+</html>
\ No newline at end of file
diff --git a/src/pages/options/index.js b/src/pages/options/index.js
new file mode 100644
index 00000000..39f9c8f3
--- /dev/null
+++ b/src/pages/options/index.js
@@ -0,0 +1,24 @@
+for (const a of document.getElementById('links').getElementsByTagName('a')) {
+    a.addEventListener('click', e => {
+        const path = a.getAttribute('href').replace('#', '');
+        loadPage(path);
+        e.preventDefault();
+    })
+}
+
+function loadPage(path) {
+    for (const section of document.getElementById('pages').getElementsByTagName('section'))
+        section.style.display = 'none';
+    document.getElementById(`${path}_page`).style.display = 'block';
+
+    for (const a of document.getElementById('links').getElementsByTagName('a'))
+        if (a.getAttribute('href') == `#${path}`) a.classList.add('selected')
+        else a.classList.remove('selected')
+
+    let stateObj = { id: "100" };
+    window.history.pushState(stateObj, "Page 2", `/pages/options/index.html#${path}`);
+}
+
+const r = window.location.href.match(/#(.*)/)
+if (r) loadPage(r[1]);
+else loadPage('general');
\ No newline at end of file
diff --git a/src/pages/options/index.pug b/src/pages/options/index.pug
new file mode 100644
index 00000000..6488aced
--- /dev/null
+++ b/src/pages/options/index.pug
@@ -0,0 +1,32 @@
+doctype html
+html#elementToShowWithJavaScript(lang="en")
+    head
+        meta(charset='utf-8')
+        meta(name="viewport" content="width=device-width, initial-scale=1")
+        link(rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg")
+        link(href="../stylesheets/styles.css" rel="stylesheet")
+        title General
+
+        script(type="module" src="./init.js")
+    body.option(dir="auto")
+        include ../widgets/links.pug
+        +links('general')
+        div#pages
+            include ./widgets/general.pug
+            include ./widgets/youtube.pug
+            include ./widgets/youtubeMusic.pug
+            include ./widgets/twitter.pug
+            include ./widgets/instagram.pug
+            include ./widgets/tiktok.pug
+            include ./widgets/reddit.pug
+            include ./widgets/imgur.pug
+            include ./widgets/wikipedia.pug
+            include ./widgets/medium.pug
+            include ./widgets/peertube.pug
+            include ./widgets/lbry.pug
+            include ./widgets/search.pug
+            include ./widgets/translate.pug
+            include ./widgets/maps.pug
+            include ./widgets/sendTargets.pug
+
+    script(type="module" src="./index.js")
\ No newline at end of file
diff --git a/src/pages/options/init.js b/src/pages/options/init.js
index c9bf2f00..daea2963 100644
--- a/src/pages/options/init.js
+++ b/src/pages/options/init.js
@@ -1,36 +1,38 @@
 window.browser = window.browser || window.chrome;
-import utils from "../../assets/javascripts/helpers/utils.js";
+
+import localise from "../../assets/javascripts/localise.js";
 
 function changeTheme() {
-    browser.storage.local.get(
-        "theme",
-        result => {
-            switch (result.theme) {
-                case "dark":
-                    document.body.classList.add("dark-theme");
-                    document.body.classList.remove("light-theme");
-                    break;
-                case "light":
-                    document.body.classList.add("light-theme");
-                    document.body.classList.remove("dark-theme");
-                    break;
-                default:
-                    if (matchMedia("(prefers-color-scheme: light)").matches) {
-                        document.body.classList.add("light-theme");
-                        document.body.classList.remove("dark-theme");
-                    } else {
+    return new Promise(resolve => {
+        browser.storage.local.get(
+            "theme",
+            r => {
+                switch (r.theme) {
+                    case "dark":
                         document.body.classList.add("dark-theme");
                         document.body.classList.remove("light-theme");
-                    }
+                        break;
+                    case "light":
+                        document.body.classList.add("light-theme");
+                        document.body.classList.remove("dark-theme");
+                        break;
+                    default:
+                        if (matchMedia("(prefers-color-scheme: light)").matches) {
+                            document.body.classList.add("light-theme");
+                            document.body.classList.remove("dark-theme");
+                        } else {
+                            document.body.classList.add("dark-theme");
+                            document.body.classList.remove("light-theme");
+                        }
+                }
+                resolve();
             }
-        }
-    )
+        )
+    })
 }
 
-changeTheme()
-
-browser.storage.onChanged.addListener(changeTheme)
-
-window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", changeTheme)
+changeTheme();
+if (["ar", "iw", "ku", "fa", "ur"].includes(browser.i18n.getUILanguage())) document.getElementsByTagName("body")[0].classList.add("rtl");
+localise.localisePage();
 
-if (utils.isRtl()) document.getElementsByTagName("body")[0].classList.add("rtl");
\ No newline at end of file
+window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", changeTheme)
\ No newline at end of file
diff --git a/src/pages/options/instagram/instagram.html b/src/pages/options/instagram/instagram.html
deleted file mode 100644
index 2524f909..00000000
--- a/src/pages/options/instagram/instagram.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Instagram</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a class="selected" href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Instagram</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-bibliogram" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="bibliogram">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://bibliogram.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://bibliogram.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./instagram.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/instagram/instagram.pug b/src/pages/options/instagram/instagram.pug
deleted file mode 100644
index 6acc2c6e..00000000
--- a/src/pages/options/instagram/instagram.pug
+++ /dev/null
@@ -1,37 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Instagram
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('instagram')
-
-    section.option-block
-        .some-block.option-block
-            h1 Instagram
-        hr
-
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-bibliogram(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #bibliogram
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://bibliogram.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://bibliogram.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./instagram.js")
\ No newline at end of file
diff --git a/src/pages/options/lbry/lbry.html b/src/pages/options/lbry/lbry.html
deleted file mode 100644
index 4c24239c..00000000
--- a/src/pages/options/lbry/lbry.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>LBRY/Odysee</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a class="selected" href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>LBRY/Odysee</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-lbry" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="librarian">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://librarian.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://librarian.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./lbry.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/lbry/lbry.pug b/src/pages/options/lbry/lbry.pug
deleted file mode 100644
index e579de32..00000000
--- a/src/pages/options/lbry/lbry.pug
+++ /dev/null
@@ -1,36 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title LBRY/Odysee
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('lbry')
-
-    section.option-block
-        .some-block.option-block
-            h1 LBRY/Odysee
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-lbry(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #librarian
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://librarian.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://librarian.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./lbry.js")
\ No newline at end of file
diff --git a/src/pages/options/maps/maps.html b/src/pages/options/maps/maps.html
deleted file mode 100644
index 596289b8..00000000
--- a/src/pages/options/maps/maps.html
+++ /dev/null
@@ -1,107 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Maps</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a class="selected" href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Maps</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-osm" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_frontend__">Frontend</h4>
-      <select id="maps-frontend">
-        <option value="osm">OpenStreetMap</option>
-        <option value="facil">Facil Map</option>
-      </select>
-    </div>
-    <div id="facil">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://facilmap.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./maps.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/maps/maps.pug b/src/pages/options/maps/maps.pug
deleted file mode 100644
index ab51f875..00000000
--- a/src/pages/options/maps/maps.pug
+++ /dev/null
@@ -1,33 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Maps
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('maps')
-
-    section.option-block
-        .some-block.option-block
-            h1 Maps
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-osm(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_frontend__") Frontend
-            select#maps-frontend
-                option(value="osm") OpenStreetMap
-                option(value="facil") Facil Map
-
-        #facil
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://facilmap.com')
-                include ../../widgets/latency.pug
-                +latency()
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./maps.js")
\ No newline at end of file
diff --git a/src/pages/options/medium/medium.html b/src/pages/options/medium/medium.html
deleted file mode 100644
index cf9bab82..00000000
--- a/src/pages/options/medium/medium.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Medium</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a class="selected" href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Medium</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-medium" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="scribe">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://scribe.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://scribe.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./medium.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/medium/medium.pug b/src/pages/options/medium/medium.pug
deleted file mode 100644
index eb640c46..00000000
--- a/src/pages/options/medium/medium.pug
+++ /dev/null
@@ -1,36 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Medium
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('medium')
-
-    section.option-block
-        .some-block.option-block
-            h1 Medium
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-medium(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #scribe
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://scribe.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://scribe.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./medium.js")
\ No newline at end of file
diff --git a/src/pages/options/peertube/peertube.html b/src/pages/options/peertube/peertube.html
deleted file mode 100644
index 384c90bf..00000000
--- a/src/pages/options/peertube/peertube.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>PeerTube</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a class="selected" href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>PeerTube</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-peertube" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="simpleertube">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://simpleertube.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://simpleertube.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./peertube.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/peertube/peertube.pug b/src/pages/options/peertube/peertube.pug
deleted file mode 100644
index a30be4db..00000000
--- a/src/pages/options/peertube/peertube.pug
+++ /dev/null
@@ -1,36 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title PeerTube
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('peertube')
-
-    section.option-block
-        .some-block.option-block
-            h1 PeerTube
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-peertube(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #simpleertube
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://simpleertube.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://simpleertube.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./peertube.js")
\ No newline at end of file
diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html
deleted file mode 100644
index 20a26f6c..00000000
--- a/src/pages/options/reddit/reddit.html
+++ /dev/null
@@ -1,187 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Reddit</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a class="selected" href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Reddit</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-reddit" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 id="frontend" data-localise="__MSG_frontend__">Frontend</h4>
-      <select id="reddit-frontend">
-        <option value="libreddit">Libreddit</option>
-        <option value="teddit">Teddit</option>
-      </select>
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="libreddit">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://libreddit.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-libreddit-label" for="latency-libreddit"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-libreddit" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://libreddit.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-    <div id="teddit">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://teddit.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-teddit-label" for="latency-teddit"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-teddit" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://teddit.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./reddit.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/reddit/reddit.pug b/src/pages/options/reddit/reddit.pug
deleted file mode 100644
index c522af29..00000000
--- a/src/pages/options/reddit/reddit.pug
+++ /dev/null
@@ -1,52 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Reddit
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('reddit')
-
-    section.option-block
-        .some-block.option-block
-            h1 Reddit
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-reddit(type="checkbox")
-
-        .some-block.option-block
-            h4#frontend(data-localise="__MSG_frontend__") Frontend
-            select#reddit-frontend
-                option(value="libreddit") Libreddit
-                option(value="teddit") Teddit
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #libreddit
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://libreddit.com')
-                include ../../widgets/latency.pug
-                +latency('libreddit')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://libreddit.onion')
-
-        #teddit
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://teddit.com')
-                +latency('teddit')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://teddit.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./reddit.js")
\ No newline at end of file
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html
deleted file mode 100644
index e7107d7b..00000000
--- a/src/pages/options/search/search.html
+++ /dev/null
@@ -1,309 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Search</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a class="selected" href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Search</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-search" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_frontend__">Frontend</h4>
-      <select id="search-frontend">
-        <option value="searxng">SearXNG</option>
-        <option value="searx">SearX</option>
-        <option value="whoogle">Whoogle</option>
-      </select>
-    </div>
-    <div id="searx-whoogle">
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_protocol__">Protocol</h4>
-        <select id="protocol">
-          <option value="normal" data-localise="__MSG_normal__">Normal</option>
-          <option value="tor" data-localise="__MSG_tor__">Tor</option>
-          <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
-        </select>
-      </div>
-    </div>
-    <div class="some-block">
-      <h4 data-localise="__MSG_searchNote__">Note: To use Search to its full potential, make LibRedirect as the Default Search Engine</h4>
-    </div>
-    <div id="searx">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://searx.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-searx-label" for="latency-searx"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-searx" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://searx.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-      <div class="i2p">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://searx.i2p" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-    <div id="searxng">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://searxng.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-searxng-label" for="latency-searxng"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-searxng" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://searxng.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-      <div class="i2p">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://searxng.i2p" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-    <div id="whoogle">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://whoogle.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-whoogle-label" for="latency-whoogle"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-whoogle" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://whoogle.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-      <div class="i2p">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://whoogle.i2p" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./search.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/search/search.pug b/src/pages/options/search/search.pug
deleted file mode 100644
index a9001243..00000000
--- a/src/pages/options/search/search.pug
+++ /dev/null
@@ -1,78 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Search
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('search')
-
-    section.option-block
-        .some-block.option-block
-            h1 Search
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-search(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_frontend__") Frontend
-            select#search-frontend
-                option(value="searxng") SearXNG
-                option(value="searx") SearX
-                option(value="whoogle") Whoogle
-
-
-        #searx-whoogle
-            .some-block.option-block
-                h4(data-localise="__MSG_protocol__") Protocol
-                select#protocol
-                    option(value="normal" data-localise="__MSG_normal__") Normal
-                    option(value="tor" data-localise="__MSG_tor__") Tor
-                    option(value="i2p" data-localise="__MSG_i2p__") I2P
-
-        .some-block
-            h4(data-localise="__MSG_searchNote__") Note: To use Search to its full potential, make LibRedirect as the Default Search Engine
-
-        #searx
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://searx.com')
-                include ../../widgets/latency.pug
-                +latency('searx')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://searx.onion')
-            .i2p
-                include ../../widgets/instances.pug
-                +instances('https://searx.i2p')
-
-        #searxng
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://searxng.com')
-                +latency('searxng')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://searxng.onion')
-            .i2p
-                include ../../widgets/instances.pug
-                +instances('https://searxng.i2p')
-
-        #whoogle
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://whoogle.com')
-                +latency('whoogle')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://whoogle.onion')
-            .i2p
-                include ../../widgets/instances.pug
-                +instances('https://whoogle.i2p')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./search.js")
\ No newline at end of file
diff --git a/src/pages/options/sendTargets/sendTargets.html b/src/pages/options/sendTargets/sendTargets.html
deleted file mode 100644
index f9f72efc..00000000
--- a/src/pages/options/sendTargets/sendTargets.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Send Files</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a class="selected" href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Send Files</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-sendTargets" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="send">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://send.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://send.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./sendTargets.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/sendTargets/sendTargets.pug b/src/pages/options/sendTargets/sendTargets.pug
deleted file mode 100644
index 027aee79..00000000
--- a/src/pages/options/sendTargets/sendTargets.pug
+++ /dev/null
@@ -1,36 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Send Files
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('sendTargets')
-
-    section.option-block
-        .some-block.option-block
-            h1 Send Files
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-sendTargets(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #send
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://send.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://send.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./sendTargets.js")
\ No newline at end of file
diff --git a/src/pages/options/tiktok/tiktok.html b/src/pages/options/tiktok/tiktok.html
deleted file mode 100644
index b4fb1d2a..00000000
--- a/src/pages/options/tiktok/tiktok.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>TikTok</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a class="selected" href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>TikTok</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-tiktok" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="proxiTok">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://proxitok.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://proxitok.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./tiktok.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/tiktok/tiktok.pug b/src/pages/options/tiktok/tiktok.pug
deleted file mode 100644
index db765c45..00000000
--- a/src/pages/options/tiktok/tiktok.pug
+++ /dev/null
@@ -1,36 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title TikTok
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('tiktok')
-
-    section.option-block
-        .some-block.option-block
-            h1 TikTok
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-tiktok(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-        
-        #proxiTok
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://proxitok.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://proxitok.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./tiktok.js")
diff --git a/src/pages/options/translate/translate.html b/src/pages/options/translate/translate.html
deleted file mode 100644
index 879917bd..00000000
--- a/src/pages/options/translate/translate.html
+++ /dev/null
@@ -1,186 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Translate</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a class="selected" href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Translate</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-simplyTranslate" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_frontend__">Frontend</h4>
-      <select id="translate-frontend">
-        <option value="simplyTranslate">SimplyTranslate</option>
-        <option value="lingva">Lingva</option>
-      </select>
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <hr>
-    <div id="simplyTranslate">
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://simplytranslate.org" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-simplyTranslate-label" for="latency-simplyTranslate"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-simplyTranslate" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="http://hxecvvetgrznmprg.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-    <div id="lingva">
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://lingvatranslate.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-lingva-label" for="latency-lingva"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-lingva" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="http://tyzxppdeoojdnaux.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./translate.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/translate/translate.pug b/src/pages/options/translate/translate.pug
deleted file mode 100644
index a1689e29..00000000
--- a/src/pages/options/translate/translate.pug
+++ /dev/null
@@ -1,50 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Translate
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('translate')
-
-    section.option-block
-        .some-block.option-block
-            h1 Translate
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-simplyTranslate(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_frontend__") Frontend
-            select#translate-frontend
-                option(value="simplyTranslate") SimplyTranslate
-                option(value="lingva") Lingva
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        hr
-        #simplyTranslate
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://simplytranslate.org')
-                include ../../widgets/latency.pug
-                +latency('simplyTranslate')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('http://hxecvvetgrznmprg.onion')
-        #lingva
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://lingvatranslate.com')
-                +latency('lingva')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('http://tyzxppdeoojdnaux.onion')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./translate.js")
diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html
deleted file mode 100644
index 384ba9da..00000000
--- a/src/pages/options/twitter/twitter.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Twitter</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a class="selected" href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Twitter</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-nitter" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-      </select>
-    </div>
-    <div id="nitter">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://nitter.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://nitter.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./twitter.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/twitter/twitter.pug b/src/pages/options/twitter/twitter.pug
deleted file mode 100644
index 092c3e45..00000000
--- a/src/pages/options/twitter/twitter.pug
+++ /dev/null
@@ -1,37 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Twitter
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('twitter')
-
-    section.option-block
-        .some-block.option-block
-            h1 Twitter
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-nitter(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-
-        #nitter
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://nitter.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://nitter.onion')
-
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./twitter.js")
diff --git a/src/pages/options/general/general.js b/src/pages/options/widgets/general.js
index c943ddd8..c810fb8a 100644
--- a/src/pages/options/general/general.js
+++ b/src/pages/options/widgets/general.js
@@ -1,24 +1,24 @@
 "use strict";
 window.browser = window.browser || window.chrome;
 
-import utils from "../../../assets/javascripts/helpers/utils.js";
-import generalHelper from "../../../assets/javascripts/helpers/general.js";
-
-import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
-import youtubeMusicHelper from "../../../assets/javascripts/helpers/youtubeMusic.js";
-import twitterHelper from "../../../assets/javascripts/helpers/twitter.js";
-import instagramHelper from "../../../assets/javascripts/helpers/instagram.js";
-import redditHelper from "../../../assets/javascripts/helpers/reddit.js";
-import searchHelper from "../../../assets/javascripts/helpers/search.js";
-import translateHelper from "../../../assets/javascripts/helpers/translate/translate.js";
-import mapsHelper from "../../../assets/javascripts/helpers/maps.js";
-import wikipediaHelper from "../../../assets/javascripts/helpers/wikipedia.js";
-import mediumHelper from "../../../assets/javascripts/helpers/medium.js";
-import imgurHelper from "../../../assets/javascripts/helpers/imgur.js";
-import tiktokHelper from "../../../assets/javascripts/helpers/tiktok.js";
-import sendTargetsHelper from "../../../assets/javascripts/helpers/sendTargets.js";
-import peertubeHelper from "../../../assets/javascripts/helpers/peertube.js";
-import lbryHelper from "../../../assets/javascripts/helpers/lbry.js";
+import utils from "../../../assets/javascripts/utils.js";
+import generalHelper from "../../../assets/javascripts/general.js";
+
+import youtubeHelper from "../../../assets/javascripts/youtube/youtube.js";
+import youtubeMusicHelper from "../../../assets/javascripts/youtubeMusic.js";
+import twitterHelper from "../../../assets/javascripts/twitter.js";
+import instagramHelper from "../../../assets/javascripts/instagram.js";
+import redditHelper from "../../../assets/javascripts/reddit.js";
+import searchHelper from "../../../assets/javascripts/search.js";
+import translateHelper from "../../../assets/javascripts/translate/translate.js";
+import mapsHelper from "../../../assets/javascripts/maps.js";
+import wikipediaHelper from "../../../assets/javascripts/wikipedia.js";
+import mediumHelper from "../../../assets/javascripts/medium.js";
+import imgurHelper from "../../../assets/javascripts/imgur.js";
+import tiktokHelper from "../../../assets/javascripts/tiktok.js";
+import sendTargetsHelper from "../../../assets/javascripts/sendTargets.js";
+import peertubeHelper from "../../../assets/javascripts/peertube.js";
+import lbryHelper from "../../../assets/javascripts/lbry.js";
 
 let updateInstancesElement = document.getElementById("update-instances");
 updateInstancesElement.addEventListener("click", () => {
@@ -115,6 +115,7 @@ let themeElement = document.getElementById("theme");
 themeElement.addEventListener("change", event => {
   const value = event.target.options[theme.selectedIndex].value;
   browser.storage.local.set({ theme: value });
+  location.reload();
 })
 
 let nameCustomInstanceInput = document.getElementById("exceptions-custom-instance");
diff --git a/src/pages/options/widgets/general.pug b/src/pages/options/widgets/general.pug
new file mode 100644
index 00000000..c1fcc459
--- /dev/null
+++ b/src/pages/options/widgets/general.pug
@@ -0,0 +1,167 @@
+section#general_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_general__") General
+    hr
+
+    .some-block.option-block
+        h4(data-localise="__MSG_theme__") Theme
+        select#theme
+            option(value="DEFAULT" data-localise="__MSG_system__") System
+            option(value="light" data-localise="__MSG_light__") Light
+            option(value="dark" data-localise="__MSG_dark__") Dark
+
+    .some-block.option-block
+        h4(data-localise="__MSG_autoRedirect__")
+        input#auto-redirect(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_exceptions__")
+
+    form#custom-exceptions-instance-form
+        .some-block.option-block
+            .some-block(style="padding:0;")
+                input#exceptions-custom-instance(placeholder="https://www.google.com" type="url")
+                |&nbsp;
+                select#exceptions-custom-instance-type
+                    option(value="url") URL
+                    option(value="regex") Regex
+                |&nbsp;
+            button#exceptions-add-instance.add(type="submit")
+                svg(xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor")
+                    path(d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z")
+
+    #exceptions-custom-checklist.checklist
+
+    .buttons.buttons-inline
+        a#update-instances.button.button-inline
+            svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
+                path(d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z")
+            x(data-localise="__MSG_updateInstances__") Update Instances
+
+        |&nbsp; &nbsp;
+
+        label#import_settings_text.button.button-inline(for="import-settings") 
+            svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
+                path(d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z")
+            |&nbsp;
+            x(data-localise="__MSG_importSettings__") Import Settings
+        input#import-settings.button.button-inline(type="file" style="display:none;")
+
+        |&nbsp; &nbsp;
+
+        a#export-settings.button.button-inline
+            svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
+                path(d="M10.09 15.59L11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59zM19 3H5c-1.11 0-2 .9-2 2v4h2V5h14v14H5v-4H3v4c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z")
+            |&nbsp;
+            x(data-localise="__MSG_exportSettings__") Export Settings
+
+        |&nbsp; &nbsp;
+
+        a#reset-settings.button.button-inline
+            svg(xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
+                path(d="M12,5V2L8,6l4,4V7c3.31,0,6,2.69,6,6c0,2.97-2.17,5.43-5,5.91v2.02c3.95-0.49,7-3.85,7-7.93C20,8.58,16.42,5,12,5z")
+                path(d="M6,13c0-1.65,0.67-3.15,1.76-4.24L6.34,7.34C4.9,8.79,4,10.79,4,13c0,4.08,3.05,7.44,7,7.93v-2.02 C8.17,18.43,6,15.97,6,13z")
+            x(data-localise="__MSG_resetSettings__") Reset Settings
+    hr
+
+    .some-block.option-block
+        h4(data-localise="__MSG_customPopup__") Customize Popup
+
+    #popup-frontends-checklist.checklist-popup
+        div
+            div
+                img(src="../../../assets/images/youtube-icon.png")
+                x(data-localise="__MSG_youtube__") YouTube
+            input#youtube(type="checkbox")
+        div
+            div
+                img(src="../../../assets/images/youtube-music-icon.png")
+                x(data-localise="__MSG_ytmusic__") YoutubeMusic
+            input#youtubeMusic(type="checkbox")
+        div
+            div
+                img(src="../../../assets/images/twitter-icon.png")
+                x(data-localise="__MSG_twitter__") Twitter
+            input#twitter(type="checkbox")
+
+        div
+            div 
+                img(src="../../../assets/images/instagram-icon.png")
+                x(data-localise="__MSG_instagram__") Instagram
+            input#instagram(type="checkbox")
+
+        div 
+            div 
+                img(src="../../../assets/images/tiktok-icon.png")
+                x(data-localise="__MSG_tiktok__") TikTok
+            input#tikTok(type="checkbox")
+
+        div 
+            div 
+                img(src="../../../assets/images/imgur-icon.png")
+                x(data-localise="__MSG_imgur__") Imgur
+            input#imgur(type="checkbox")
+
+        div 
+            div 
+                img(src="../../../assets/images/reddit-icon.png")
+                x(data-localise="__MSG_reddit__") Reddit
+            input#reddit(type="checkbox")
+
+        div 
+            div 
+                svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor")
+                    path(d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z")
+                x(data-localise="__MSG_search__") Search
+            input#search(type="checkbox")
+
+        div 
+            div 
+                svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor")
+                    path(d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z")
+                x(data-localise="__MSG_translate__") Translate
+            input#translate(type="checkbox")
+
+        div 
+            div 
+                svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor")
+                    path(d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z")
+                x(data-localise="__MSG_maps__") Maps
+            input#maps(type="checkbox")
+
+        div 
+            div 
+                img(src="../../../assets/images/wikipedia-icon.svg")
+                x(data-localise="__MSG_wikipedia__") Wikipedia
+            input#wikipedia(type="checkbox")
+
+        div 
+            div 
+                svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor")
+                    circle(cx="500" cy="500" r="500")
+                    ellipse(ry="475" rx="250" cy="501" cx="1296")
+                    ellipse(cx="1682" cy="502" rx="88" ry="424")
+                x(data-localise="__MSG_medium__") Medium
+            input#medium(type="checkbox")
+
+        div 
+            div 
+                img(src="../../../assets/images/peertube-icon.svg")
+                x(data-localise="__MSG_peertube__") PeerTube
+            input#peertube(type="checkbox")
+
+        div 
+            div 
+                img(src="../../../assets/images/lbry-icon.png")
+                x(data-localise="__MSG_lbry__") LBRY/Odysee
+            input#lbry(type="checkbox")
+
+        div 
+            div 
+                svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
+                    path(d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z")
+                x(data-localise="__MSG_sendFiles__") Send Files
+            input#sendTargets(type="checkbox")
+
+
+    script(type="module" src="./widgets/general.js")
\ No newline at end of file
diff --git a/src/pages/options/imgur/imgur.js b/src/pages/options/widgets/imgur.js
index 0b1343c8..036f33ed 100644
--- a/src/pages/options/imgur/imgur.js
+++ b/src/pages/options/widgets/imgur.js
@@ -1,5 +1,5 @@
-import imgurHelper from "../../../assets/javascripts/helpers/imgur.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import imgurHelper from "../../../assets/javascripts/imgur.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disableImgurElement = document.getElementById("disable-imgur");
 let protocolElement = document.getElementById("protocol")
diff --git a/src/pages/options/widgets/imgur.pug b/src/pages/options/widgets/imgur.pug
new file mode 100644
index 00000000..45104cd3
--- /dev/null
+++ b/src/pages/options/widgets/imgur.pug
@@ -0,0 +1,32 @@
+section#imgur_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_imgur__") Imgur
+    hr
+
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-imgur(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+            option(value="i2p" data-localise="__MSG_i2p__") I2P
+
+    #rimgo
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://rimgo.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://rimgo.onion')
+
+        .i2p
+            include ../../widgets/instances.pug
+            +instances('https://rimgo.onion')
+
+    script(type="module" src="./widgets/imgur.js")
\ No newline at end of file
diff --git a/src/pages/options/instagram/instagram.js b/src/pages/options/widgets/instagram.js
index 955aafc3..f04fc8c5 100644
--- a/src/pages/options/instagram/instagram.js
+++ b/src/pages/options/widgets/instagram.js
@@ -1,5 +1,5 @@
-import instagramHelper from "../../../assets/javascripts/helpers/instagram.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import instagramHelper from "../../../assets/javascripts/instagram.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 const disable = document.getElementById("disable-bibliogram");
 const protocol = document.getElementById("protocol");
diff --git a/src/pages/options/widgets/instagram.pug b/src/pages/options/widgets/instagram.pug
new file mode 100644
index 00000000..e5698b41
--- /dev/null
+++ b/src/pages/options/widgets/instagram.pug
@@ -0,0 +1,27 @@
+section#instagram_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_instagram__") Instagram
+    hr
+
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-bibliogram(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #bibliogram
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://bibliogram.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://bibliogram.onion')
+
+    script(type="module" src="./widgets/instagram.js")
\ No newline at end of file
diff --git a/src/pages/options/lbry/lbry.js b/src/pages/options/widgets/lbry.js
index 92cc21a5..2aac362f 100644
--- a/src/pages/options/lbry/lbry.js
+++ b/src/pages/options/widgets/lbry.js
@@ -1,5 +1,5 @@
-import lbryHelper from "../../../assets/javascripts/helpers/lbry.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import lbryHelper from "../../../assets/javascripts/lbry.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-lbry");
 let protocol = document.getElementById("protocol")
diff --git a/src/pages/options/widgets/lbry.pug b/src/pages/options/widgets/lbry.pug
new file mode 100644
index 00000000..21c4f497
--- /dev/null
+++ b/src/pages/options/widgets/lbry.pug
@@ -0,0 +1,26 @@
+section#lbry_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_lbry__") LBRY/Odysee
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-lbry(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #librarian
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://librarian.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://librarian.onion')
+
+    script(type="module" src="./widgets/lbry.js")
\ No newline at end of file
diff --git a/src/pages/options/maps/maps.js b/src/pages/options/widgets/maps.js
index 6db8c03e..ddfa8345 100644
--- a/src/pages/options/maps/maps.js
+++ b/src/pages/options/widgets/maps.js
@@ -1,5 +1,5 @@
-import mapsHelper from "../../../assets/javascripts/helpers/maps.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import mapsHelper from "../../../assets/javascripts/maps.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 const disable = document.getElementById("disable-osm");
 const frontend = document.getElementById("maps-frontend");
diff --git a/src/pages/options/widgets/maps.pug b/src/pages/options/widgets/maps.pug
new file mode 100644
index 00000000..b36c3521
--- /dev/null
+++ b/src/pages/options/widgets/maps.pug
@@ -0,0 +1,23 @@
+section#maps_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_maps__") Maps
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-osm(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_frontend__") Frontend
+        select#maps-frontend
+            option(value="osm") OpenStreetMap
+            option(value="facil") Facil Map
+
+    #facil
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://facilmap.com')
+            include ../../widgets/latency.pug
+            +latency()
+
+    script(type="module" src="./widgets/maps.js")
\ No newline at end of file
diff --git a/src/pages/options/medium/medium.js b/src/pages/options/widgets/medium.js
index 9f00878d..085d6804 100644
--- a/src/pages/options/medium/medium.js
+++ b/src/pages/options/widgets/medium.js
@@ -1,5 +1,5 @@
-import mediumHelper from "../../../assets/javascripts/helpers/medium.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import mediumHelper from "../../../assets/javascripts/medium.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-medium");
 let protocol = document.getElementById("protocol")
diff --git a/src/pages/options/widgets/medium.pug b/src/pages/options/widgets/medium.pug
new file mode 100644
index 00000000..10c18f6d
--- /dev/null
+++ b/src/pages/options/widgets/medium.pug
@@ -0,0 +1,26 @@
+section#medium_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_medium__") Medium
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-medium(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #scribe
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://scribe.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://scribe.onion')
+
+    script(type="module" src="./widgets/medium.js")
\ No newline at end of file
diff --git a/src/pages/options/peertube/peertube.js b/src/pages/options/widgets/peertube.js
index 0bf16cc7..f2cede89 100644
--- a/src/pages/options/peertube/peertube.js
+++ b/src/pages/options/widgets/peertube.js
@@ -1,5 +1,5 @@
-import peertubeHelper from "../../../assets/javascripts/helpers/peertube.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import peertubeHelper from "../../../assets/javascripts/peertube.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-peertube");
 let protocol = document.getElementById("protocol")
diff --git a/src/pages/options/widgets/peertube.pug b/src/pages/options/widgets/peertube.pug
new file mode 100644
index 00000000..496fb2df
--- /dev/null
+++ b/src/pages/options/widgets/peertube.pug
@@ -0,0 +1,26 @@
+section#peertube_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_peertube__") PeerTube
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-peertube(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #simpleertube
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://simpleertube.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://simpleertube.onion')
+
+    script(type="module" src="./widgets/peertube.js")
\ No newline at end of file
diff --git a/src/pages/options/reddit/reddit.js b/src/pages/options/widgets/reddit.js
index 3661f73f..da4221aa 100644
--- a/src/pages/options/reddit/reddit.js
+++ b/src/pages/options/widgets/reddit.js
@@ -1,5 +1,5 @@
-import redditHelper from "../../../assets/javascripts/helpers/reddit.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import redditHelper from "../../../assets/javascripts/reddit.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let libredditDivElement = document.getElementById("libreddit")
 let tedditDivElement = document.getElementById("teddit")
diff --git a/src/pages/options/widgets/reddit.pug b/src/pages/options/widgets/reddit.pug
new file mode 100644
index 00000000..ae72b31f
--- /dev/null
+++ b/src/pages/options/widgets/reddit.pug
@@ -0,0 +1,42 @@
+section#reddit_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_reddit__") Reddit
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-reddit(type="checkbox")
+
+    .some-block.option-block
+        h4#frontend(data-localise="__MSG_frontend__") Frontend
+        select#reddit-frontend
+            option(value="libreddit") Libreddit
+            option(value="teddit") Teddit
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #libreddit
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://libreddit.com')
+            include ../../widgets/latency.pug
+            +latency('libreddit')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://libreddit.onion')
+
+    #teddit
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://teddit.com')
+            +latency('teddit')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://teddit.onion')
+
+    script(type="module" src="./widgets/reddit.js")
\ No newline at end of file
diff --git a/src/pages/options/search/search.js b/src/pages/options/widgets/search.js
index fb928055..2506279a 100644
--- a/src/pages/options/search/search.js
+++ b/src/pages/options/widgets/search.js
@@ -1,5 +1,5 @@
-import searchHelper from "../../../assets/javascripts/helpers/search.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import searchHelper from "../../../assets/javascripts/search.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let searxDiv = document.getElementById("searx");
 let searxngDiv = document.getElementById("searxng");
diff --git a/src/pages/options/widgets/search.pug b/src/pages/options/widgets/search.pug
new file mode 100644
index 00000000..feea4b0d
--- /dev/null
+++ b/src/pages/options/widgets/search.pug
@@ -0,0 +1,69 @@
+
+section#search_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_search__") Search
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-search(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_frontend__") Frontend
+        select#search-frontend
+            option(value="searxng") SearXNG
+            option(value="searx") SearX
+            option(value="whoogle") Whoogle
+
+
+    #searx-whoogle
+        .some-block.option-block
+            h4(data-localise="__MSG_protocol__") Protocol
+            select#protocol
+                option(value="normal" data-localise="__MSG_normal__") Normal
+                option(value="tor" data-localise="__MSG_tor__") Tor
+                option(value="i2p" data-localise="__MSG_i2p__") I2P
+
+    .some-block
+        h4(data-localise="__MSG_searchNote__") Note: To use Search to its full potential, make LibRedirect as the Default Search Engine
+
+    #searx
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://searx.com')
+            include ../../widgets/latency.pug
+            +latency('searx')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://searx.onion')
+        .i2p
+            include ../../widgets/instances.pug
+            +instances('https://searx.i2p')
+
+    #searxng
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://searxng.com')
+            +latency('searxng')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://searxng.onion')
+        .i2p
+            include ../../widgets/instances.pug
+            +instances('https://searxng.i2p')
+
+    #whoogle
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://whoogle.com')
+            +latency('whoogle')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://whoogle.onion')
+        .i2p
+            include ../../widgets/instances.pug
+            +instances('https://whoogle.i2p')
+
+    script(type="module" src="./widgets/search.js")
\ No newline at end of file
diff --git a/src/pages/options/sendTargets/sendTargets.js b/src/pages/options/widgets/sendTargets.js
index 0cb1da09..37e2588e 100644
--- a/src/pages/options/sendTargets/sendTargets.js
+++ b/src/pages/options/widgets/sendTargets.js
@@ -1,5 +1,5 @@
-import sendTargetsHelper from "../../../assets/javascripts/helpers/sendTargets.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import sendTargetsHelper from "../../../assets/javascripts/sendTargets.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-sendTargets");
 let protocol = document.getElementById("protocol")
diff --git a/src/pages/options/widgets/sendTargets.pug b/src/pages/options/widgets/sendTargets.pug
new file mode 100644
index 00000000..c4a933d1
--- /dev/null
+++ b/src/pages/options/widgets/sendTargets.pug
@@ -0,0 +1,26 @@
+section#sendTargets_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_sendFiles__") Send Files
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-sendTargets(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #send
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://send.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://send.onion')
+
+    script(type="module" src="./widgets/sendTargets.js")
\ No newline at end of file
diff --git a/src/pages/options/tiktok/tiktok.js b/src/pages/options/widgets/tiktok.js
index 5a57b46c..6b5702e1 100644
--- a/src/pages/options/tiktok/tiktok.js
+++ b/src/pages/options/widgets/tiktok.js
@@ -1,5 +1,5 @@
-import tiktokHelper from "../../../assets/javascripts/helpers/tiktok.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import tiktokHelper from "../../../assets/javascripts/tiktok.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-tiktok");
 let protocol = document.getElementById("protocol")
@@ -12,8 +12,6 @@ document.addEventListener("change", () => {
     changeProtocolSettings();
 })
 
-window.onblur = tiktokHelper.initProxiTokCookies;
-
 browser.storage.local.get(
     [
         "disableTiktok",
diff --git a/src/pages/options/widgets/tiktok.pug b/src/pages/options/widgets/tiktok.pug
new file mode 100644
index 00000000..ec55671c
--- /dev/null
+++ b/src/pages/options/widgets/tiktok.pug
@@ -0,0 +1,26 @@
+section#tiktok_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_tiktok__") TikTok
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-tiktok(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+    
+    #proxiTok
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://proxitok.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://proxitok.onion')
+
+    script(type="module" src="./widgets/tiktok.js")
diff --git a/src/pages/options/translate/translate.js b/src/pages/options/widgets/translate.js
index 998ebc32..3e1990f4 100644
--- a/src/pages/options/translate/translate.js
+++ b/src/pages/options/widgets/translate.js
@@ -1,5 +1,5 @@
-import translateHelper from "../../../assets/javascripts/helpers/translate/translate.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import translateHelper from "../../../assets/javascripts/translate/translate.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-simplyTranslate");
 let simplyTranslateDiv = document.getElementById("simplyTranslate");
diff --git a/src/pages/options/widgets/translate.pug b/src/pages/options/widgets/translate.pug
new file mode 100644
index 00000000..a97a4245
--- /dev/null
+++ b/src/pages/options/widgets/translate.pug
@@ -0,0 +1,40 @@
+section#translate_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_translate__") Translate
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-simplyTranslate(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_frontend__") Frontend
+        select#translate-frontend
+            option(value="simplyTranslate") SimplyTranslate
+            option(value="lingva") Lingva
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    hr
+    #simplyTranslate
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://simplytranslate.org')
+            include ../../widgets/latency.pug
+            +latency('simplyTranslate')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('http://hxecvvetgrznmprg.onion')
+    #lingva
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://lingvatranslate.com')
+            +latency('lingva')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('http://tyzxppdeoojdnaux.onion')
+
+    script(type="module" src="./widgets/translate.js")
diff --git a/src/pages/options/twitter/twitter.js b/src/pages/options/widgets/twitter.js
index 72c3d926..266fd027 100644
--- a/src/pages/options/twitter/twitter.js
+++ b/src/pages/options/widgets/twitter.js
@@ -1,5 +1,5 @@
-import twitterHelper from "../../../assets/javascripts/helpers/twitter.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import twitterHelper from "../../../assets/javascripts/twitter.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disable = document.getElementById("disable-nitter");
 let protocol = document.getElementById("protocol");
diff --git a/src/pages/options/widgets/twitter.pug b/src/pages/options/widgets/twitter.pug
new file mode 100644
index 00000000..af743dcd
--- /dev/null
+++ b/src/pages/options/widgets/twitter.pug
@@ -0,0 +1,26 @@
+section#twitter_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_twitter__") Twitter
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-nitter(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+
+    #nitter
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://nitter.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://nitter.onion')
+
+    script(type="module" src="./widgets/twitter.js")
diff --git a/src/pages/options/wikipedia/wikipedia.js b/src/pages/options/widgets/wikipedia.js
index c421c18a..6e847c8d 100644
--- a/src/pages/options/wikipedia/wikipedia.js
+++ b/src/pages/options/widgets/wikipedia.js
@@ -1,5 +1,5 @@
-import wikipediaHelper from "../../../assets/javascripts/helpers/wikipedia.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import wikipediaHelper from "../../../assets/javascripts/wikipedia.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disableWikipediaElement = document.getElementById("disable-wikipedia");
 let protocolElement = document.getElementById("protocol");
@@ -48,6 +48,4 @@ utils.processDefaultCustomInstances('wikipedia', 'wikiless', 'normal', document)
 utils.processDefaultCustomInstances('wikipedia', 'wikiless', 'tor', document);
 utils.processDefaultCustomInstances('wikipedia', 'wikiless', 'i2p', document);
 
-window.onblur = wikipediaHelper.initWikilessCookies;
-
 utils.latency('wikipedia', 'wikiless', document, location)
\ No newline at end of file
diff --git a/src/pages/options/widgets/wikipedia.pug b/src/pages/options/widgets/wikipedia.pug
new file mode 100644
index 00000000..79d1e323
--- /dev/null
+++ b/src/pages/options/widgets/wikipedia.pug
@@ -0,0 +1,32 @@
+section#wikipedia_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_wikipedia__") Wikipedia
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-wikipedia(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_protocol__") Protocol
+        select#protocol
+            option(value="normal" data-localise="__MSG_normal__") Normal
+            option(value="tor" data-localise="__MSG_tor__") Tor
+            option(value="i2p" data-localise="__MSG_i2p__") I2P
+
+    #wikiless
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://wikiless.com')
+            include ../../widgets/latency.pug
+            +latency()
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://wikiless.onion')
+
+        .i2p
+            include ../../widgets/instances.pug
+            +instances('https://wikiless.i2p')
+
+    script(type="module" src="./widgets/wikipedia.js")
+    
\ No newline at end of file
diff --git a/src/pages/options/youtube/youtube.js b/src/pages/options/widgets/youtube.js
index 4f987849..7826541b 100644
--- a/src/pages/options/youtube/youtube.js
+++ b/src/pages/options/widgets/youtube.js
@@ -1,5 +1,5 @@
-import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import youtubeHelper from "../../../assets/javascripts/youtube/youtube.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disableYoutube = document.getElementById("disable-invidious");
 let youtubeFrontend = document.getElementById("youtube-frontend");
diff --git a/src/pages/options/widgets/youtube.pug b/src/pages/options/widgets/youtube.pug
new file mode 100644
index 00000000..71bf104b
--- /dev/null
+++ b/src/pages/options/widgets/youtube.pug
@@ -0,0 +1,73 @@
+section#youtube_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_youtube__") YouTube
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-invidious(type="checkbox")
+
+    .some-block.option-block
+        h4(data-localise="__MSG_frontend__") Frontend
+        select#youtube-frontend
+            option(value="invidious") Invidious
+            option(value="piped") Piped
+            option(value="pipedMaterial") Piped-Material
+            option(value="freetube") FreeTube
+            option(value="yatte") Yattee
+
+    #freetube-yatte
+        .some-block.option-block
+            h4(data-localise="__MSG_embeddedVids__") Embedded Videos Frontend
+            select#youtube-embed-frontend
+                option(value="invidious") Invidious
+                option(value="piped") Piped
+                option(value="pipedMaterial") Piped-Material
+                option(value="youtube") Youtube
+
+    #invidious-piped-pipedMaterial
+        .some-block.option-block
+            h4(data-localise="__MSG_protocol__") Protocol
+            select#protocol
+                option(value="normal" data-localise="__MSG_normal__") Normal
+                option(value="tor" data-localise="__MSG_tor__") Tor
+
+        .some-block.option-block
+            h4(data-localise="__MSG_redirectType__") Redirect Type
+            select#only-embed
+                option(value="both" data-localise="__MSG_both__") both
+                option(value="onlyEmbedded" data-localise="__MSG_onlyEmbedded__") Only Embedded
+                option(value="onlyNotEmbedded" data-localise="__MSG_onlyNotEmbedded__") Only Not Embedded
+
+    #invidious
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://invidious.com')
+            include ../../widgets/latency.pug
+            +latency('invidious')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://invidious.onion')
+
+    #piped
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://piped.com')
+            +latency('piped')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://piped.onion')
+
+    #pipedMaterial
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://piped-material.com')
+            +latency('pipedMaterial')
+        .tor
+            include ../../widgets/instances.pug
+            +instances('https://piped-material.onion')
+
+
+    script(type="module" src="./widgets/youtube.js")
diff --git a/src/pages/options/youtubeMusic/youtubeMusic.js b/src/pages/options/widgets/youtubeMusic.js
index 167630eb..9a9bf8fb 100644
--- a/src/pages/options/youtubeMusic/youtubeMusic.js
+++ b/src/pages/options/widgets/youtubeMusic.js
@@ -1,5 +1,5 @@
-import youtubeMusicHelper from "../../../assets/javascripts/helpers/youtubeMusic.js";
-import utils from "../../../assets/javascripts/helpers/utils.js";
+import youtubeMusicHelper from "../../../assets/javascripts/youtubeMusic.js";
+import utils from "../../../assets/javascripts/utils.js";
 
 let disableYoutubeMusicElement = document.getElementById("disable-beatbump");
 
diff --git a/src/pages/options/widgets/youtubeMusic.pug b/src/pages/options/widgets/youtubeMusic.pug
new file mode 100644
index 00000000..231b6caf
--- /dev/null
+++ b/src/pages/options/widgets/youtubeMusic.pug
@@ -0,0 +1,17 @@
+section#youtubeMusic_page.option-block
+    .some-block.option-block
+        h1(data-localise="__MSG_ytmusic__") YouTube Music
+    hr
+    .some-block.option-block
+        h4(data-localise="__MSG_enable__") Enable
+        input#disable-beatbump(type="checkbox")
+
+    #beatbump
+        hr
+        .normal
+            include ../../widgets/instances.pug
+            +instances('https://beatbump.wewe')
+            include ../../widgets/latency.pug
+            +latency()
+
+    script(type="module" src="./widgets/youtubeMusic.js")
diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html
deleted file mode 100644
index fe735ac5..00000000
--- a/src/pages/options/wikipedia/wikipedia.html
+++ /dev/null
@@ -1,150 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>Wikipedia</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a class="selected" href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>Wikipedia</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-wikipedia" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_protocol__">Protocol</h4>
-      <select id="protocol">
-        <option value="normal" data-localise="__MSG_normal__">Normal</option>
-        <option value="tor" data-localise="__MSG_tor__">Tor</option>
-        <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
-      </select>
-    </div>
-    <div id="wikiless">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://wikiless.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://wikiless.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-      <div class="i2p">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://wikiless.i2p" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./wikipedia.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/wikipedia/wikipedia.pug b/src/pages/options/wikipedia/wikipedia.pug
deleted file mode 100644
index d08431db..00000000
--- a/src/pages/options/wikipedia/wikipedia.pug
+++ /dev/null
@@ -1,41 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title Wikipedia
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('wikipedia')
-
-    section.option-block
-        .some-block.option-block
-            h1 Wikipedia
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-wikipedia(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_protocol__") Protocol
-            select#protocol
-                option(value="normal" data-localise="__MSG_normal__") Normal
-                option(value="tor" data-localise="__MSG_tor__") Tor
-                option(value="i2p" data-localise="__MSG_i2p__") I2P
-
-        #wikiless
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://wikiless.com')
-                include ../../widgets/latency.pug
-                +latency()
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://wikiless.onion')
-
-            .i2p
-                include ../../widgets/instances.pug
-                +instances('https://wikiless.i2p')
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./wikipedia.js")
diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html
deleted file mode 100644
index 2938ccd1..00000000
--- a/src/pages/options/youtube/youtube.html
+++ /dev/null
@@ -1,263 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>YouTube</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a class="selected" href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>YouTube</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-invidious" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_frontend__">Frontend</h4>
-      <select id="youtube-frontend">
-        <option value="invidious">Invidious</option>
-        <option value="piped">Piped</option>
-        <option value="pipedMaterial">Piped-Material</option>
-        <option value="freetube">FreeTube</option>
-        <option value="yatte">Yattee</option>
-      </select>
-    </div>
-    <div id="freetube-yatte">
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_embeddedVids__">Embedded Videos Frontend</h4>
-        <select id="youtube-embed-frontend">
-          <option value="invidious">Invidious</option>
-          <option value="piped">Piped</option>
-          <option value="pipedMaterial">Piped-Material</option>
-          <option value="youtube">Youtube</option>
-        </select>
-      </div>
-    </div>
-    <div id="invidious-piped-pipedMaterial">
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_protocol__">Protocol</h4>
-        <select id="protocol">
-          <option value="normal" data-localise="__MSG_normal__">Normal</option>
-          <option value="tor" data-localise="__MSG_tor__">Tor</option>
-        </select>
-      </div>
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_redirectType">Redirect Type</h4>
-        <select id="only-embed">
-          <option value="both" data-localise="__MSG_both__">both</option>
-          <option value="onlyEmbedded" data-localise="__MSG_onlyEmbedded__">Only Embedded</option>
-          <option value="onlyNotEmbedded" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
-        </select>
-      </div>
-    </div>
-    <div id="invidious">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://invidious.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-invidious-label" for="latency-invidious"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-invidious" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://invidious.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-    <div id="piped">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://piped.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-piped-label" for="latency-piped"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-piped" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://piped.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-    <div id="pipedMaterial">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://piped-material.com" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-pipedMaterial-label" for="latency-pipedMaterial"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency-pipedMaterial" style="display:none;">
-      </div>
-      <div class="tor">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://piped-material.onion" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./youtube.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/youtube/youtube.pug b/src/pages/options/youtube/youtube.pug
deleted file mode 100644
index 6d5d2469..00000000
--- a/src/pages/options/youtube/youtube.pug
+++ /dev/null
@@ -1,83 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title YouTube
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('youtube')
-
-    section.option-block
-        .some-block.option-block
-            h1 YouTube
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-invidious(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_frontend__") Frontend
-            select#youtube-frontend
-                option(value="invidious") Invidious
-                option(value="piped") Piped
-                option(value="pipedMaterial") Piped-Material
-                option(value="freetube") FreeTube
-                option(value="yatte") Yattee
-
-        #freetube-yatte
-            .some-block.option-block
-                h4(data-localise="__MSG_embeddedVids__") Embedded Videos Frontend
-                select#youtube-embed-frontend
-                    option(value="invidious") Invidious
-                    option(value="piped") Piped
-                    option(value="pipedMaterial") Piped-Material
-                    option(value="youtube") Youtube
-
-        #invidious-piped-pipedMaterial
-            .some-block.option-block
-                h4(data-localise="__MSG_protocol__") Protocol
-                select#protocol
-                    option(value="normal" data-localise="__MSG_normal__") Normal
-                    option(value="tor" data-localise="__MSG_tor__") Tor
-
-            .some-block.option-block
-                h4(data-localise="__MSG_redirectType") Redirect Type
-                select#only-embed
-                    option(value="both" data-localise="__MSG_both__") both
-                    option(value="onlyEmbedded" data-localise="__MSG_onlyEmbedded__") Only Embedded
-                    option(value="onlyNotEmbedded" data-localise="__MSG_onlyNotEmbedded__") Only Not Embedded
-
-        #invidious
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://invidious.com')
-                include ../../widgets/latency.pug
-                +latency('invidious')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://invidious.onion')
-
-        #piped
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://piped.com')
-                +latency('piped')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://piped.onion')
-
-        #pipedMaterial
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://piped-material.com')
-                +latency('pipedMaterial')
-            .tor
-                include ../../widgets/instances.pug
-                +instances('https://piped-material.onion')
-
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./youtube.js")
diff --git a/src/pages/options/youtubeMusic/youtubeMusic.html b/src/pages/options/youtubeMusic/youtubeMusic.html
deleted file mode 100644
index b77a2a88..00000000
--- a/src/pages/options/youtubeMusic/youtubeMusic.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head>
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="icon" type="image/x-icon" href="../../../assets/images/libredirect.svg">
-    <link href="../../stylesheets/styles.css" rel="stylesheet">
-    <title>YouTube Music</title>
-  </head>
-</html>
-<script type="module" src="../../../assets/javascripts/localise.js"></script>
-<body class="option" dir="auto">
-    <section class="links">
-      <div class="title">
-          <svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="26px" viewBox="0 0 24 24" width="26px" fill="currentColor">
-            <path d="M19.14,12.94c0.04-0.3,0.06-0.61,0.06-0.94c0-0.32-0.02-0.64-0.07-0.94l2.03-1.58c0.18-0.14,0.23-0.41,0.12-0.61 l-1.92-3.32c-0.12-0.22-0.37-0.29-0.59-0.22l-2.39,0.96c-0.5-0.38-1.03-0.7-1.62-0.94L14.4,2.81c-0.04-0.24-0.24-0.41-0.48-0.41 h-3.84c-0.24,0-0.43,0.17-0.47,0.41L9.25,5.35C8.66,5.59,8.12,5.92,7.63,6.29L5.24,5.33c-0.22-0.08-0.47,0-0.59,0.22L2.74,8.87 C2.62,9.08,2.66,9.34,2.86,9.48l2.03,1.58C4.84,11.36,4.8,11.69,4.8,12s0.02,0.64,0.07,0.94l-2.03,1.58 c-0.18,0.14-0.23,0.41-0.12,0.61l1.92,3.32c0.12,0.22,0.37,0.29,0.59,0.22l2.39-0.96c0.5,0.38,1.03,0.7,1.62,0.94l0.36,2.54 c0.05,0.24,0.24,0.41,0.48,0.41h3.84c0.24,0,0.44-0.17,0.47-0.41l0.36-2.54c0.59-0.24,1.13-0.56,1.62-0.94l2.39,0.96 c0.22,0.08,0.47,0,0.59-0.22l1.92-3.32c0.12-0.22,0.07-0.47-0.12-0.61L19.14,12.94z M12,15.6c-1.98,0-3.6-1.62-3.6-3.6 s1.62-3.6,3.6-3.6s3.6,1.62,3.6,3.6S13.98,15.6,12,15.6z"></path>
-          </svg><a href="../general/general.html" data-localise="__MSG_general__">General</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
-      <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a class="selected" href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
-      <div class="title"> <img src="../../../assets/images/twitter-icon.png"><a href="../twitter/twitter.html" data-localise="__MSG_twitter__">Twitter</a></div>
-      <div class="title"> <img src="../../../assets/images/instagram-icon.png"><a href="../instagram/instagram.html" data-localise="__MSG_instagram__">Instagram</a></div>
-      <div class="title"> <img src="../../../assets/images/tiktok-icon.png"><a href="../tiktok/tiktok.html" data-localise="__MSG_tiktok__">TikTok</a></div>
-      <div class="title"> <img src="../../../assets/images/reddit-icon.png"><a href="../reddit/reddit.html" data-localise="__MSG_reddit__">Reddit</a></div>
-      <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
-      <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-            <circle cx="500" cy="500" r="500"></circle>
-            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
-      </div>
-      <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">PeerTube</a></div>
-      <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-            <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"></path>
-          </svg><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"></path>
-          </svg><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M20.5 3l-.16.03L15 5.1 9 3 3.36 4.9c-.21.07-.36.25-.36.48V20.5c0 .28.22.5.5.5l.16-.03L9 18.9l6 2.1 5.64-1.9c.21-.07.36-.25.36-.48V3.5c0-.28-.22-.5-.5-.5zM10 5.47l4 1.4v11.66l-4-1.4V5.47zm-5 .99l3-1.01v11.7l-3 1.16V6.46zm14 11.08l-3 1.01V6.86l3-1.16v11.84z"></path>
-          </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
-      </div>
-      <div class="title"> 
-          <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-            <path d="M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM14 13v4h-4v-4H7l5-5 5 5h-3z"></path>
-          </svg><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
-      </div>
-    </section>
-  <section class="option-block">
-    <div class="some-block option-block">
-      <h1>YouTube Music</h1>
-    </div>
-    <hr>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enable__">Enable</h4>
-      <input id="disable-beatbump" type="checkbox">
-    </div>
-    <div id="beatbump">
-      <hr>
-      <div class="normal">
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
-                </div>
-                <div class="checklist"></div>
-                <hr>
-                <div class="some-block option-block">
-                  <h4 data-localise="__MSG_customInstances__">Custom Instances</h4>
-                </div>
-                <form class="custom-instance-form">
-                  <div class="some-block option-block">
-                    <input class="custom-instance" placeholder="https://beatbump.wewe" type="url">
-                    <button class="add add-instance" type="submit">
-                      <svg xmlns="https://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px" fill="currentColor">
-                        <path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"></path>
-                      </svg>
-                    </button>
-                  </div>
-                </form>
-                <div class="checklist custom-checklist"></div>
-                <label class="button button-inline" id="latency-label" for="latency"> 
-                  <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-                    <path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"></path>
-                  </svg>&nbsp;
-                  <x data-localise="__MSG_testInstancesLatency__">Test Instances Latency</x>
-                </label>
-                <input class="button button-inline" id="latency" style="display:none;">
-      </div>
-    </div>
-  </section>
-  <script type="module" src="../init.js"></script>
-  <script type="module" src="./youtubeMusic.js"></script>
-</body>
\ No newline at end of file
diff --git a/src/pages/options/youtubeMusic/youtubeMusic.pug b/src/pages/options/youtubeMusic/youtubeMusic.pug
deleted file mode 100644
index ad3271d4..00000000
--- a/src/pages/options/youtubeMusic/youtubeMusic.pug
+++ /dev/null
@@ -1,27 +0,0 @@
-doctype html
-html(lang="en")
-    include ../../widgets/head.pug
-        title YouTube Music
-script(type="module" src="../../../assets/javascripts/localise.js")
-body.option(dir="auto")
-    include ../../widgets/links.pug
-    +links('youtubeMusic')
-
-    section.option-block
-        .some-block.option-block
-            h1 YouTube Music
-        hr
-        .some-block.option-block
-            h4(data-localise="__MSG_enable__") Enable
-            input#disable-beatbump(type="checkbox")
-
-        #beatbump
-            hr
-            .normal
-                include ../../widgets/instances.pug
-                +instances('https://beatbump.wewe')
-                include ../../widgets/latency.pug
-                +latency()
-
-    script(type="module" src="../init.js")
-    script(type="module" src="./youtubeMusic.js")