This commit is contained in:
epoberezkin
2026-03-16 19:24:58 +00:00
parent 4b30416e1c
commit 3e7175b15e
299 changed files with 6338 additions and 63 deletions
+19
View File
@@ -44,12 +44,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<meta name="Content-Type" content="text/html;charset=utf-8" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css" />
<link href="/css/style.css" rel="stylesheet" />
@@ -308,6 +311,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -322,6 +339,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -341,6 +359,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Contact</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Get the app via F-Droid</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX File Transfer</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -318,6 +321,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -332,6 +349,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -351,6 +369,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+47 -2
View File
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<html lang="ar"
<html class="bg-[#C1E3FE] dark:bg-[#050920]" lang="ar"
@@ -45,9 +45,10 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<meta name="theme-color" content="transparent">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
<meta name="description" content="SimpleX Chat - a private and encrypted messenger without any user IDs (not even random ones)! Make a private connection via link / QR code to send messages and make calls."/>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
@@ -61,6 +62,34 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#C1E3FE">
<link rel="preload" href="/img/design_3/cover.webp" as="image" type="image/webp">
<link rel="preload" href="/img/design_3/cover-light.webp" as="image" type="image/webp" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/new/logo-dark.png" as="image">
<link rel="preload" href="/img/new/logo-light.png" as="image" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/design_3/publications/trail-of-bits.png" as="image">
<link rel="preload" href="/img/design_3/publications/privacy-guides.png" as="image">
<link rel="preload" href="/img/design_3/publications/whonix.png" as="image">
<link rel="preload" href="/img/design_3/publications/heise.png" as="image">
<link rel="preload" href="/img/design_3/publications/kuketz-blog.png" as="image">
<link rel="preload" href="/img/design_3/publications/optout.png" as="image">
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Bold.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Regular.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-ExtraLight.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Light.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Medium.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Bold.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/img/new/apple_store.svg" as="image">
<link rel="preload" href="/img/new/google_play.svg" as="image">
<link rel="preload" href="/img/new/f_droid.svg" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/testflight-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/android-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/socials/linux.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/apple.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/windows.png" as="image" media="(min-width: 960px)">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link rel="stylesheet" href="/css/design3.css">
@@ -509,6 +538,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -523,6 +566,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -542,6 +586,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Invitation</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: The World&#39;s Most Secure Messaging</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Why we are building SimpleX Network</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -423,6 +426,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -437,6 +454,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -456,6 +474,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Contact</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -510,6 +513,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -524,6 +541,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -543,6 +561,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Get the app via F-Droid</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -510,6 +513,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -524,6 +541,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -543,6 +561,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX File Transfer</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -314,6 +317,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -328,6 +345,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -347,6 +365,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+47 -2
View File
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<html lang="bg"
<html class="bg-[#C1E3FE] dark:bg-[#050920]" lang="bg"
@@ -43,9 +43,10 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<meta name="theme-color" content="transparent">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
<meta name="description" content="SimpleX Chat - a private and encrypted messenger without any user IDs (not even random ones)! Make a private connection via link / QR code to send messages and make calls."/>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
@@ -59,6 +60,34 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#C1E3FE">
<link rel="preload" href="/img/design_3/cover.webp" as="image" type="image/webp">
<link rel="preload" href="/img/design_3/cover-light.webp" as="image" type="image/webp" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/new/logo-dark.png" as="image">
<link rel="preload" href="/img/new/logo-light.png" as="image" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/design_3/publications/trail-of-bits.png" as="image">
<link rel="preload" href="/img/design_3/publications/privacy-guides.png" as="image">
<link rel="preload" href="/img/design_3/publications/whonix.png" as="image">
<link rel="preload" href="/img/design_3/publications/heise.png" as="image">
<link rel="preload" href="/img/design_3/publications/kuketz-blog.png" as="image">
<link rel="preload" href="/img/design_3/publications/optout.png" as="image">
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Bold.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Regular.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-ExtraLight.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Light.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Medium.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Bold.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/img/new/apple_store.svg" as="image">
<link rel="preload" href="/img/new/google_play.svg" as="image">
<link rel="preload" href="/img/new/f_droid.svg" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/testflight-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/android-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/socials/linux.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/apple.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/windows.png" as="image" media="(min-width: 960px)">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link rel="stylesheet" href="/css/design3.css">
@@ -500,6 +529,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -514,6 +557,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -533,6 +577,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Invitation</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -510,6 +513,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -524,6 +541,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -543,6 +561,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: The World&#39;s Most Secure Messaging</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -510,6 +513,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -524,6 +541,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -543,6 +561,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -510,6 +513,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -524,6 +541,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -543,6 +561,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -41,6 +41,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Why we are building SimpleX Network</title>
@@ -56,6 +58,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -414,6 +417,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -428,6 +445,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -447,6 +465,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Simplex Chat</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Announcing SimpleX Chat Prototype!</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX announces SimpleX Chat v0.4</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX announces SimpleX Chat v0.5</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX announces SimpleX Chat v1</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX announces SimpleX Chat public beta for iOS</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX announces SimpleX Chat mobile apps for iOS and Android</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Instant notifications for SimpleX Chat mobile apps</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v2.0 - sending images and files in mobile apps</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v2.1 - better conversation privacy</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v2.2 - the new privacy and security features</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX announces SimpleX Chat v3 &amp;mdash; with encrypted calls and iOS push notifications</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v3.1-beta is released &amp;mdash; improved battery/traffic usage</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v3.1 is released &amp;mdash; with secret groups and server access via Tor</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v3.2 is released &amp;mdash; meet Incognito mode, unique to Simplex Chat</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v4.0 with encrypted database is released</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Security assessment by Trail of Bits, the new website and v4.2 released</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat reviews and v4.3 released with instant voice messages, irreversible deletion of sent messages and improved server configuration.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v4.4 released with disappearing messages, live messages, connection security verification and French language!</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v4.5 released with multiple chat profiles, message draft, transport isolation and Italian language!</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX File Transfer Protocol - a new protocol for sending large files efficiently, privately and securely.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v4.6 with hidden profiles, community moderation, improved audio/video calls and reduced battery usage.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat: vision and funding, v5.0 released with videos and files up to 1gb</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v5.1 released: message reactions and self-destruct passcode</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v5.2 released: message delivery receipts</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v5.3 released: desktop app, local file encryption and improved groups with directory service</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v5.4 - link mobile and desktop apps via quantum resistant protocol, and much better groups.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat: free infrastructure from Linode, v5.5 released with private notes, group history and a simpler UX to connect.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v5.6 (beta): adding quantum resistance to Signal double ratchet algorithm</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: real privacy and stable profits, non-profits for protocols, v5.6 released with quantum resistant e2e encryption and simple profile migration</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Why I joined SimpleX Chat - by Esra&#39;a al Shafei</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: The dangers of metadata in messengers</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: legally binding transparency, v5.7 released with better calls and messages</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX: Redefining Privacy by Making Hard Choices</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Protecting Children&#39;s Safety Requires End-to-End Encryption</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: private message routing, v5.8 released with IP address protection and chat themes</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: The Future of Privacy: Enforcing Privacy Standards</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: the investment from Jack Dorsey and Asymmetric, v6.0 released with the new user experience and private message routing.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: cryptographic design review by Trail of Bits, v6.1 released with better calls and user experience.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Wireds Attack on Privacy</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Servers operated by Flux - true privacy and decentralization for all users</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: preset servers operated by Flux, business chats and more with v6.2 of the apps</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: Oppose digital IDs they break the law and lead to mass scale surveillance</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: large groups and privacy-preserving content moderation</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v6.3: new user experience and safety in public groups</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX network: new experience of connecting with people &amp;mdash; available in SimpleX Chat v6.4-beta.4</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
@@ -44,6 +44,8 @@
<head>
<meta charset="UTF-8" />
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>SimpleX blog: SimpleX Chat v6.4.1: welcome your contacts, review members to protect groups, and more.</title>
@@ -57,6 +59,7 @@
<meta name="twitter:card" content="summary" />
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
<meta name="theme-color" content="#F3FAFF">
<link href="/css/tailwind.css" rel="stylesheet" />
<link rel="stylesheet" href="/css/blog.css" />
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
@@ -315,6 +318,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -329,6 +346,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -348,6 +366,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX blog: the latest news</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -318,6 +321,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -332,6 +349,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -351,6 +369,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Contact</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Contact</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Get the app via F-Droid</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX File Transfer</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -318,6 +321,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -332,6 +349,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -351,6 +369,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+47 -2
View File
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<html lang="cs"
<html class="bg-[#C1E3FE] dark:bg-[#050920]" lang="cs"
@@ -45,9 +45,10 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<meta name="theme-color" content="transparent">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
<meta name="description" content="SimpleX Chat - a private and encrypted messenger without any user IDs (not even random ones)! Make a private connection via link / QR code to send messages and make calls."/>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
@@ -61,6 +62,34 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#C1E3FE">
<link rel="preload" href="/img/design_3/cover.webp" as="image" type="image/webp">
<link rel="preload" href="/img/design_3/cover-light.webp" as="image" type="image/webp" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/new/logo-dark.png" as="image">
<link rel="preload" href="/img/new/logo-light.png" as="image" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/design_3/publications/trail-of-bits.png" as="image">
<link rel="preload" href="/img/design_3/publications/privacy-guides.png" as="image">
<link rel="preload" href="/img/design_3/publications/whonix.png" as="image">
<link rel="preload" href="/img/design_3/publications/heise.png" as="image">
<link rel="preload" href="/img/design_3/publications/kuketz-blog.png" as="image">
<link rel="preload" href="/img/design_3/publications/optout.png" as="image">
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Bold.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Regular.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-ExtraLight.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Light.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Medium.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Bold.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/img/new/apple_store.svg" as="image">
<link rel="preload" href="/img/new/google_play.svg" as="image">
<link rel="preload" href="/img/new/f_droid.svg" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/testflight-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/android-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/socials/linux.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/apple.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/windows.png" as="image" media="(min-width: 960px)">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link rel="stylesheet" href="/css/design3.css">
@@ -509,6 +538,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -523,6 +566,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -542,6 +586,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Invitation</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: The World&#39;s Most Secure Messaging</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Why we are building SimpleX Network</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -423,6 +426,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -437,6 +454,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -456,6 +474,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+2 -2
View File
@@ -585,7 +585,7 @@ button#cross-btn {
}
header#navbar nav#menu .nav-link a {
font-family: "Manrope", "GT-Walsheim", sans-serif;
font-family: "Manrope", sans-serif;
font-weight: 300;
font-size: 18px;
width: 100%;
@@ -638,7 +638,7 @@ button#cross-btn {
}
header#navbar nav#menu .sub-menu li a {
font-family: "Manrope", "GT-Walsheim", sans-serif;
font-family: "Manrope", sans-serif;
font-weight: 300;
width: 100%;
}
+21 -13
View File
@@ -216,10 +216,6 @@ html {
font-family: GT-Walsheim, Gilroy, Helvetica, sans-serif;
}
html,
body {
background: #ffffff;
}
.dark html,
.dark body {
@@ -397,8 +393,8 @@ section.cover div.content {
}
section.cover div.content h1 {
font-family: "GT-Walsheim", "Manrope", sans-serif;
font-weight: 600;
font-family: "GT-Walsheim", sans-serif;
font-weight: 700;
font-size: calc(var(--sec-vwu) * 11.7);
line-height: 0.9;
letter-spacing: -0.025em;
@@ -419,7 +415,7 @@ section.cover div.content h1 .medium {
}
section.cover div.content h2 {
font-family: "GT-Walsheim", "Manrope", sans-serif;
font-family: "GT-Walsheim", sans-serif;
font-weight: 400;
font-size: calc(var(--sec-vwu) * 5);
letter-spacing: -0.025em;
@@ -427,7 +423,7 @@ section.cover div.content h2 {
}
section.cover div.content p {
font-family: "Manrope", "GT-Walsheim", sans-serif;
font-family: "Manrope", sans-serif;
font-weight: 200;
font-size: calc(var(--sec-vwu) * 2.14);
align-items: center;
@@ -491,7 +487,7 @@ section.cover div.content p {
.security-audits {
font-size: 14px !important;
font-family: 'Manrope', 'GT-Walsheim', sans-serif !important;
font-family: 'Manrope', sans-serif !important;
font-weight: 300 !important;
color: white;
line-height: 1.2;
@@ -532,6 +528,14 @@ section.cover div.content p {
flex-wrap: wrap;
}
@media (min-width: 960px) {
.socials .desktop-app-btn,
.socials .apple-store-btn,
.socials .google-play-btn {
display: flex !important;
}
}
[dir="ltr"] .socials {
right: 30px;
}
@@ -567,7 +571,7 @@ section.cover div.content p {
.desktop-app-btn .btn-content p {
margin: 0;
font-size: 11px !important;
font-family: 'Manrope', 'GT-Walsheim', sans-serif !important;
font-family: 'Manrope', sans-serif !important;
font-weight: 300 !important;
line-height: 1.2 !important;
text-align: left;
@@ -593,6 +597,10 @@ section.cover div.content p {
.socials {
position: static;
}
.socials {
min-height: 42px;
}
}
/* --- MAIN SECTIONS --- */
@@ -761,7 +769,7 @@ main .section-bg {
}
.page .text-container h2 {
font-family: "GT-Walsheim", "Manrope", sans-serif;
font-family: "GT-Walsheim", sans-serif;
font-weight: 300;
font-size: calc(var(--sec-vwu)*4.94);
letter-spacing: -0.025em;
@@ -775,7 +783,7 @@ main .section-bg {
}
.page .text-container p {
font-family: "Manrope", "GT-Walsheim", sans-serif;
font-family: "Manrope", sans-serif;
font-weight: 200;
font-size: calc(var(--sec-vwu)*1.62);
max-width: calc(var(--sec-vwu)*23);
@@ -791,7 +799,7 @@ main .section-bg {
}
.page .text-container a {
font-family: "Manrope", "GT-Walsheim", sans-serif;
font-family: "Manrope", sans-serif;
font-weight: 200;
font-size: calc(var(--sec-vwu)*1.62);
text-decoration: underline;
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Contact</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Get the app via F-Droid</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX File Transfer</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -318,6 +321,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -332,6 +349,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -351,6 +369,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+47 -2
View File
@@ -1,6 +1,6 @@
<!DOCTYPE html>
<html lang="de"
<html class="bg-[#C1E3FE] dark:bg-[#050920]" lang="de"
@@ -45,9 +45,10 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<meta name="theme-color" content="transparent">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
<meta name="description" content="SimpleX Chat - a private and encrypted messenger without any user IDs (not even random ones)! Make a private connection via link / QR code to send messages and make calls."/>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
@@ -61,6 +62,34 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#C1E3FE">
<link rel="preload" href="/img/design_3/cover.webp" as="image" type="image/webp">
<link rel="preload" href="/img/design_3/cover-light.webp" as="image" type="image/webp" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/new/logo-dark.png" as="image">
<link rel="preload" href="/img/new/logo-light.png" as="image" media="(prefers-color-scheme: light)">
<link rel="preload" href="/img/design_3/publications/trail-of-bits.png" as="image">
<link rel="preload" href="/img/design_3/publications/privacy-guides.png" as="image">
<link rel="preload" href="/img/design_3/publications/whonix.png" as="image">
<link rel="preload" href="/img/design_3/publications/heise.png" as="image">
<link rel="preload" href="/img/design_3/publications/kuketz-blog.png" as="image">
<link rel="preload" href="/img/design_3/publications/optout.png" as="image">
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Bold.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/GT-Walsheim/GT-Walsheim-LC-Regular.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-ExtraLight.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Light.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Medium.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/fonts/Manrope/Manrope-Bold.ttf" as="font" type="font/ttf" crossorigin>
<link rel="preload" href="/img/new/apple_store.svg" as="image">
<link rel="preload" href="/img/new/google_play.svg" as="image">
<link rel="preload" href="/img/new/f_droid.svg" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/testflight-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/android-dark.png" as="image" media="(max-width: 959px)">
<link rel="preload" href="/img/design_3/socials/linux.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/apple.png" as="image" media="(min-width: 960px)">
<link rel="preload" href="/img/design_3/socials/windows.png" as="image" media="(min-width: 960px)">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link rel="stylesheet" href="/css/design3.css">
@@ -509,6 +538,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -523,6 +566,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -542,6 +586,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat - Invitation</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: The World&#39;s Most Secure Messaging</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Chat: private and secure messenger without any user IDs (not even random)</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -519,6 +522,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -533,6 +550,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -552,6 +570,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Why we are building SimpleX Network</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -423,6 +426,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -437,6 +454,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -456,6 +474,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -43,6 +43,8 @@
>
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Directory</title>
@@ -58,6 +60,7 @@
<meta property="og:image" content="https://simplex.chat/img/share_simplex.jpg"/>
<meta name="twitter:card" content="summary"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#F3FAFF">
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
<link rel="stylesheet" href="/css/blog.css">
@@ -318,6 +321,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -332,6 +349,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -351,6 +369,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Accessing files in Android app</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -548,6 +551,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -562,6 +579,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -581,6 +599,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX for business</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Terminal CLI</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -548,6 +551,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -562,6 +579,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -581,6 +599,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Contributing guide</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -548,6 +551,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -562,6 +579,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -581,6 +599,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SimpleX Directory</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -309,6 +312,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -323,6 +340,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -342,6 +360,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>App settings</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Audio &amp; video Calls</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Chat profiles</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -309,6 +312,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -323,6 +340,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -342,6 +360,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Making connections</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Managing data</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Privacy &amp; security</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -309,6 +312,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -323,6 +340,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -342,6 +360,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Quick start</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');
+19
View File
@@ -45,12 +45,15 @@
<head>
<meta charset="UTF-8">
<script>if (localStorage.getItem('theme') === 'dark' || (!localStorage.getItem('theme') && window.matchMedia('(prefers-color-scheme: dark)').matches)) document.documentElement.classList.add('dark')</script>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Secret groups</title>
<meta name="Content-Type" content="text/html;charset=utf-8"/>
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
<meta name="theme-color" content="#ffffff">
<link href="/css/tailwind.css" rel="stylesheet"/>
<link id="prism-theme" rel="stylesheet" href="/css/prism-light.min.css"/>
<link href="/css/style.css" rel="stylesheet"/>
@@ -410,6 +413,20 @@ function iconToggle () {
moonIcon.classList.toggle('hidden');
}
function updateThemeColor() {
const meta = document.querySelector('meta[name="theme-color"]');
if (meta) meta.setAttribute('content', getComputedStyle(document.body).backgroundColor);
const navbar = document.querySelector('header#navbar');
if (navbar && navbar.classList.contains('open')) {
navbar.style.transition = 'none';
navbar.classList.remove('open');
setTimeout(() => {
navbar.classList.add('open');
setTimeout(() => navbar.style.transition = '', 0);
}, 0);
}
}
function themeCheck() {
if (userTheme === 'dark' || (!userTheme && systemTheme)) {
document.documentElement.classList.add('dark');
@@ -424,6 +441,7 @@ function themeCheck() {
prismThemeLink.setAttribute('href','/css/prism-light.min.css')
}
}
updateThemeColor();
}
themeCheck();
@@ -443,6 +461,7 @@ function themeSwitch () {
}
iconToggle();
}
updateThemeColor();
}
const nav = document.querySelector('header#navbar');

Some files were not shown because too many files have changed in this diff Show More