deploy: fa5a70cd19
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Simplex Chat</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Simplex Chat" />
|
||||
<meta property="og:url" content="/blog/20201022-simplex-chat.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat" tabindex="-1">Simplex chat</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat" tabindex="-1">Simplex chat</h1>
|
||||
<p><strong>Published:</strong> Oct 22, 2020</p>
|
||||
<p><a href="https://simplex.chat">https://simplex.chat</a></p>
|
||||
<p>I'd really appreciate your feedback, criticism and suggestions on the open-source idea I was slowly working on since early 2020. I recently made the demo server for the low-level message queue protocol ("simplex messaging protocol") and the website to try to explain the chat idea that would use this protocol.</p>
|
||||
@@ -166,29 +219,80 @@
|
||||
<p>Any criticism would be great - thank you in advance!</p>
|
||||
<p>Originally published at <a href="https://www.reddit.com/r/haskell/comments/jg6uh4/simplex_chat/">https://www.reddit.com/r/haskell/comments/jg6uh4/simplex_chat/</a></p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Announcing SimpleX Chat Prototype!</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Announcing SimpleX Chat Prototype!" />
|
||||
<meta property="og:url" content="/blog/20210512-simplex-chat-terminal-ui.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="announcing-simplex-chat-prototype" tabindex="-1">Announcing SimpleX Chat Prototype!</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="announcing-simplex-chat-prototype" tabindex="-1">Announcing SimpleX Chat Prototype!</h1>
|
||||
<p><strong>Published:</strong> May 12, 2021</p>
|
||||
<p>For the last six months <a href="https://github.com/epoberezkin">me</a> and my son <a href="https://github.com/efim-poberezkin">Efim</a> have been working to bring you a working prototype of SimpleX Chat. We're excited to announce SimpleX Chat terminal client is now available <a href="https://github.com/simplex-chat/simplex-chat">here</a> on Linux, Windows and Mac (you can either build from source or download the binary for Linux, Windows or Mac from the latest release).</p>
|
||||
<p>We’ve been using the terminal client between us and a few other people for a couple of months now, eating our own “dog food”, and have developed up to version 0.3.1, with most of the messaging protocol features we originally planned</p>
|
||||
@@ -174,29 +227,80 @@
|
||||
<p>We're building a new kind of chat network - the only network that lets you control your chat. We'd really appreciate your feedback, criticism and support - a star on the github repo, signing up to the mailing list or any contribution to the project will help. There is so much more to do!</p>
|
||||
<p>Originally published at <a href="https://www.reddit.com/r/haskell/comments/naw6lz/simplex_chat_prototype_terminal_ui_made_in_haskell/">https://www.reddit.com/r/haskell/comments/naw6lz/simplex_chat_prototype_terminal_ui_made_in_haskell/</a></p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX announces SimpleX Chat v0.4</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX announces SimpleX Chat v0.4" />
|
||||
<meta property="og:url" content="/blog/20210914-simplex-chat-v0.4-released.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-announces-simplex-chat-v04" tabindex="-1">SimpleX announces SimpleX Chat v0.4</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-announces-simplex-chat-v04" tabindex="-1">SimpleX announces SimpleX Chat v0.4</h1>
|
||||
<p><strong>Published:</strong> Sep 14, 2021</p>
|
||||
<h2 id="open-source-decentralized-chat-that-uses-privacy-preserving-message-routing-protocol" tabindex="-1">Open-source decentralized chat that uses privacy-preserving message routing protocol</h2>
|
||||
<p>We are building a new platform for distributed Internet applications where privacy of the messages <em>and</em> the network matter. <a href="https://github.com/simplex-chat/simplex-chat">SimpleX Chat</a> is our first application, a chat application built on the SimpleX platform that serves as an example of the power of the platform and as a reference application.</p>
|
||||
@@ -178,29 +231,80 @@
|
||||
<p>Our goal is to create a new kind of chat platform that lets you control your chat!</p>
|
||||
<p>Originally published at <a href="https://www.reddit.com/r/selfhosted/comments/poal79/simplex_chat_an_opensource_decentralized_chat/">https://www.reddit.com/r/selfhosted/comments/poal79/simplex_chat_an_opensource_decentralized_chat/</a></p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX announces SimpleX Chat v0.5</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX announces SimpleX Chat v0.5" />
|
||||
<meta property="og:url" content="/blog/20211208-simplex-chat-v0.5-released.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-announces-simplex-chat-v05" tabindex="-1">SimpleX announces SimpleX Chat v0.5</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-announces-simplex-chat-v05" tabindex="-1">SimpleX announces SimpleX Chat v0.5</h1>
|
||||
<p><strong>Published:</strong> Dec 08, 2021</p>
|
||||
<h2 id="simplex-chat-is-the-first-chat-platform-that-is-100percent-private-by-design-simplex-no-access-to-your-connections-graph" tabindex="-1">Simplex Chat is the first chat platform that is 100% private by design - SimpleX no access to your connections graph</h2>
|
||||
<p>We are building a new platform for distributed Internet applications where privacy of the messages <em>and</em> the network matter. <a href="https://github.com/simplex-chat/simplex-chat">SimpleX Chat</a> is our first application, a chat application built on the SimpleX platform that serves as an example of the power of the platform and as a reference application.</p>
|
||||
@@ -173,29 +226,80 @@
|
||||
<p>Our goal is to create a new kind of chat platform that lets you control your chat!</p>
|
||||
<p>Originally published at <a href="https://www.reddit.com/r/haskell/comments/rc0xkn/simplex_chat_the_first_chat_platform_that_is_100/">https://www.reddit.com/r/haskell/comments/rc0xkn/simplex_chat_the_first_chat_platform_that_is_100/</a></p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX announces SimpleX Chat v1</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX announces SimpleX Chat v1" />
|
||||
<meta property="og:url" content="/blog/20220112-simplex-chat-v1-released.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-announces-simplex-chat-v1" tabindex="-1">SimpleX announces SimpleX Chat v1</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-announces-simplex-chat-v1" tabindex="-1">SimpleX announces SimpleX Chat v1</h1>
|
||||
<p><strong>Published:</strong> Jan 12, 2022</p>
|
||||
<h2 id="the-most-private-and-secure-chat-and-application-platform" tabindex="-1">The most private and secure chat and application platform</h2>
|
||||
<p>We are building a new platform for distributed Internet applications where privacy of the messages <em>and</em> the network matter. <a href="https://github.com/simplex-chat/simplex-chat">SimpleX Chat</a> is our first application, a messaging application built on the SimpleX platform.</p>
|
||||
@@ -187,29 +240,80 @@
|
||||
<h2 id="we-look-forward-to-you-using-it" tabindex="-1">We look forward to you using it!</h2>
|
||||
<p>We look forward to your feedback and suggestions - via GitHub issues or via SimpleX Chat - you can connect to the team with <code>/simplex</code> command once you run the chat.</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX announces SimpleX Chat public beta for iOS</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX announces SimpleX Chat public beta for iOS" />
|
||||
<meta property="og:url" content="/blog/20220214-simplex-chat-ios-public-beta.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-announces-simplex-chat-public-beta-for-ios" tabindex="-1">SimpleX announces SimpleX Chat public beta for iOS</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-announces-simplex-chat-public-beta-for-ios" tabindex="-1">SimpleX announces SimpleX Chat public beta for iOS</h1>
|
||||
<p><strong>Published:</strong> Feb 14, 2022</p>
|
||||
<h2 id="private-and-secure-chat-and-application-platform-public-beta-is-now-available-for-iphones-with-ios-15" tabindex="-1">Private and secure chat and application platform - <a href="https://testflight.apple.com/join/DWuT2LQu">public beta is now available</a> for iPhones with iOS 15.</h2>
|
||||
<p>Our new iPhone app is very basic - right now it only supports text messages and emojis.</p>
|
||||
@@ -185,29 +238,80 @@
|
||||
<p>SimpleX also allows people to host their own servers to have control of their chat data. SimpleX servers are exceptionally lightweight and require a single process with the initial memory footprint of under 20 Mb, which grows as the server adds in-memory queues (even with 10,000 queues it uses less than 50Mb, not accounting for messages). It should be considered though that while self-hosting the servers provides more control, it may reduce meta-data privacy, as it is easier to correlate the traffic of servers with small number of messages coming through.</p>
|
||||
<p>Further details on platform objectives and technical design are available <a href="https://github.com/simplex-chat/simplexmq/blob/master/protocol/overview-tjr.md">in SimpleX platform overview</a>.</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX announces SimpleX Chat mobile apps for iOS and Android</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX announces SimpleX Chat mobile apps for iOS and Android" />
|
||||
<meta property="og:url" content="/blog/20220308-simplex-chat-mobile-apps.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-announces-simplex-chat-mobile-apps-for-ios-and-android" tabindex="-1">SimpleX announces SimpleX Chat mobile apps for iOS and Android</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-announces-simplex-chat-mobile-apps-for-ios-and-android" tabindex="-1">SimpleX announces SimpleX Chat mobile apps for iOS and Android</h1>
|
||||
<p><strong>Published:</strong> March 8, 2022</p>
|
||||
<h2 id="simplex-chat-is-the-first-chat-platform-that-is-100percent-private-by-design-it-has-no-access-to-your-connections-graph" tabindex="-1">SimpleX Chat is the first chat platform that is 100% private by design - it has no access to your connections graph</h2>
|
||||
<p>We have now released iPhone and Android apps to <a href="https://apps.apple.com/us/app/simplex-chat/id1605771084">Apple AppStore</a> and <a href="https://play.google.com/store/apps/details?id=chat.simplex.app">Google Play Store</a>, <a href="https://github.com/simplex-chat/simplex-chat/releases/latest/download/simplex.apk">APK for Android</a> is also available for direct download.</p>
|
||||
@@ -203,29 +256,80 @@
|
||||
</ul>
|
||||
<p>Please let us know what else you think is important and if you find any bugs.</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Instant notifications for SimpleX Chat mobile apps</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Instant notifications for SimpleX Chat mobile apps" />
|
||||
<meta property="og:url" content="/blog/20220404-simplex-chat-instant-notifications.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="instant-notifications-for-simplex-chat-mobile-apps" tabindex="-1">Instant notifications for SimpleX Chat mobile apps</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="instant-notifications-for-simplex-chat-mobile-apps" tabindex="-1">Instant notifications for SimpleX Chat mobile apps</h1>
|
||||
<p><strong>Published:</strong> April 04, 2022</p>
|
||||
<h2 id="simplex-chat-is-the-first-chat-platform-that-is-100percent-private-by-design-it-has-no-access-to-your-connections" tabindex="-1">SimpleX Chat is the first chat platform that is 100% private by design - it has no access to your connections</h2>
|
||||
<p>Since we released SimpleX Chat mobile apps couple of weeks ago we've had a lot of excitement from our users - nearly 2000 people downloaded the app after <a href="20220308-simplex-chat-mobile-apps.html">the announcement</a>!</p>
|
||||
@@ -244,29 +297,80 @@
|
||||
</ul>
|
||||
<p>Thank you!</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v2.0 - sending images and files in mobile apps</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v2.0 - sending images and files in mobile apps" />
|
||||
<meta property="og:url" content="/blog/20220511-simplex-chat-v2-images-files.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v20-sending-images-and-files-in-mobile-apps" tabindex="-1">SimpleX Chat v2.0 - sending images and files in mobile apps</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v20-sending-images-and-files-in-mobile-apps" tabindex="-1">SimpleX Chat v2.0 - sending images and files in mobile apps</h1>
|
||||
<p><strong>Published:</strong> May 11, 2022</p>
|
||||
<h2 id="new-in-version-20-sending-images-and-files-privately" tabindex="-1">New in version 2.0 - sending images and files privately</h2>
|
||||
<p>To send image and files SimpleX Chat uses privacy-preserving system components, both in iOS and Android apps. We do not ask for permission to access multiple or selected files, as, for example, Signal and Telegram do - it compromises either privacy or convenience.</p>
|
||||
@@ -179,29 +232,80 @@
|
||||
</ol>
|
||||
<img src="../images/conversation.png" alt="Make a private connection" width="594" height="360">
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v2.1 - better conversation privacy</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v2.1 - better conversation privacy" />
|
||||
<meta property="og:url" content="/blog/20220524-simplex-chat-better-privacy.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v21-better-conversation-privacy" tabindex="-1">SimpleX Chat v2.1 - better conversation privacy</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v21-better-conversation-privacy" tabindex="-1">SimpleX Chat v2.1 - better conversation privacy</h1>
|
||||
<p><strong>Published:</strong> May 24, 2022</p>
|
||||
<h2 id="new-in-version-21-clearing-conversations-without-deleting-contacts" tabindex="-1">New in version 2.1 - clearing conversations without deleting contacts</h2>
|
||||
<p>In this version you can irreversibly delete individual messages after they were deleted by a sender, and also completely clear the conversation.</p>
|
||||
@@ -166,29 +219,80 @@
|
||||
<p>See <a href="20220511-simplex-chat-v2-images-files.html">v2 announcement</a> for more information about SimpleX platform and how it works.</p>
|
||||
<p>Read about SimpleX design in <a href="https://github.com/simplex-chat/simplexmq/blob/master/protocol/overview-tjr.md">whitepaper</a>.</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v2.2 - the first messaging platform without user identities - 100% private by design!</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v2.2 - the new privacy and security features" />
|
||||
<meta property="og:url" content="/blog/20220604-simplex-chat-new-privacy-security-settings.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v22-the-first-messaging-platform-without-user-identities-100percent-private-by-design" tabindex="-1">SimpleX Chat v2.2 - the first messaging platform without user identities - 100% private by design!</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v22-the-new-privacy-and-security-features" tabindex="-1">SimpleX Chat v2.2 - the new privacy and security features</h1>
|
||||
<p><strong>Published:</strong> June 4, 2022</p>
|
||||
<p>See <a href="20220511-simplex-chat-v2-images-files.html">v2 announcement</a> for more information about SimpleX platform and how it protects your privacy by avoiding user identities of any kind in its design - SimpleX, unlike any other messaging platform, has no identity keys or any numbers that identify its users.</p>
|
||||
<h2 id="new-privacy-and-security-settings-in-version-22" tabindex="-1">New Privacy and Security settings in version 2.2</h2>
|
||||
@@ -184,29 +237,80 @@
|
||||
<p>See <a href="20220112-simplex-chat-v1-released.html">v1 announcement</a> for information on how SimpleX protects the security of the messages.</p>
|
||||
<p>Read about SimpleX design in <a href="https://github.com/simplex-chat/simplexmq/blob/master/protocol/overview-tjr.md">whitepaper</a>.</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX announces SimpleX Chat v3</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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 &mdash; with encrypted calls and iOS push notifications</title>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX announces SimpleX Chat v3 &mdash; with encrypted calls and iOS push notifications" />
|
||||
<meta property="og:url" content="/blog/20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-announces-simplex-chat-v3" tabindex="-1">SimpleX announces SimpleX Chat v3</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-announces-simplex-chat-v3-with-encrypted-calls-and-ios-push-notifications" tabindex="-1">SimpleX announces SimpleX Chat v3 - with encrypted calls and iOS push notifications</h1>
|
||||
<p><strong>Published:</strong> Jul 11, 2022</p>
|
||||
<h2 id="new-in-version-3" tabindex="-1">New in version 3</h2>
|
||||
<ul>
|
||||
@@ -218,29 +271,80 @@
|
||||
<p>Evgeny</p>
|
||||
<p>SimpleX Chat founder</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v3.1-beta is released</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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 &mdash; improved battery/traffic usage</title>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v3.1-beta is released &mdash; improved battery/traffic usage" />
|
||||
<meta property="og:url" content="/blog/20220723-simplex-chat-v3.1-tor-groups-efficiency.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v31-beta-is-released" tabindex="-1">SimpleX Chat v3.1-beta is released</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v31-beta-is-released-improved-batterytraffic-usage" tabindex="-1">SimpleX Chat v3.1-beta is released - improved battery/traffic usage</h1>
|
||||
<p><strong>Published:</strong> Jul 23, 2022</p>
|
||||
<h2 id="whats-new" tabindex="-1">What's new</h2>
|
||||
<ul>
|
||||
@@ -176,7 +229,7 @@
|
||||
<h3 id="mobile-apps-join-and-leave-chat-groups" tabindex="-1">Mobile apps: join and leave chat groups</h3>
|
||||
<p><img src="./images/20220723-group-invite.png" width="330"> <img src="./images/20220723-group-accept.png" width="330"> <img src="./images/20220723-group-leave.png" width="330"></p>
|
||||
<p>Groups have been supported by SimpleX Chat core for a very long time, but there was no user interface in the mobile apps to use them - users had to use chat console to create groups, add members, and accept invitations.</p>
|
||||
<p>This release allows accepting the invitations to join groups via mobile apps UI, making it much easier to create groups - only one user (a group owner) needs to use chat console, while all other groups members just need to tap a button in the UI to join or leave the group. Full group UI is coming in v3.1 in 1-2 weeks, but you can already start using groups today by installing beta-versions of mobile apps via <a href="https://testflight.apple.com/join/DWuT2LQu">TestFlight</a>, <a href="https://play.google.com/apps/testing/chat.simplex.app">Google PlayStore Beta</a> and <a href="https://github.com/simplex-chat/simplex-chat/releases/download/v3.1.0-beta.0/simplex.apk">APK download</a>.</p>
|
||||
<p>This release allows accepting the invitations to join groups via mobile apps UI, making it much easier to create groups - only one user (a group owner) needs to use chat console, while all other groups members just need to tap a button in the UI to join or leave the group. Full group UI is coming in v3.1 in 1-2 weeks, but you can already start using groups today by installing beta-versions of mobile apps via <a href="https://testflight.apple.com/join/DWuT2LQu">TestFlight</a>, <a href="https://play.google.com/apps/testing/chat.simplex.app">Google PlayStore Beta</a> and <a href="https://github.com/simplex-chat/simplex-chat/releases/latest/download/simplex.apk">APK download</a>.</p>
|
||||
<p>To manage groups via terminal app or via chat console in the mobile apps you have to use these commands:</p>
|
||||
<ul>
|
||||
<li>to create group: <code>/g <group_name> [<description>]</code></li>
|
||||
@@ -234,29 +287,80 @@
|
||||
<p>Evgeny</p>
|
||||
<p>SimpleX Chat founder</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v3.1 is released</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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 &mdash; with secret groups and server access via Tor</title>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v3.1 is released &mdash; with secret groups and server access via Tor" />
|
||||
<meta property="og:url" content="/blog/20220808-simplex-chat-v3.1-chat-groups.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v31-is-released" tabindex="-1">SimpleX Chat v3.1 is released</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v31-is-released-with-secret-groups-and-server-access-via-tor" tabindex="-1">SimpleX Chat v3.1 is released - with secret groups and server access via Tor</h1>
|
||||
<p><strong>Published:</strong> Aug 8, 2022</p>
|
||||
<h2 id="whats-new" tabindex="-1">What's new</h2>
|
||||
<ul>
|
||||
@@ -233,29 +286,80 @@
|
||||
<p>Evgeny</p>
|
||||
<p>SimpleX Chat founder</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v3.2 is released</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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 &mdash; meet Incognito mode, unique to Simplex Chat</title>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v3.2 is released &mdash; meet Incognito mode, unique to Simplex Chat" />
|
||||
<meta property="og:url" content="/blog/20220901-simplex-chat-v3.2-incognito-mode.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v32-is-released" tabindex="-1">SimpleX Chat v3.2 is released</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v32-is-released-meet-incognito-mode-unique-to-simplex-chat" tabindex="-1">SimpleX Chat v3.2 is released - meet Incognito mode, unique to Simplex Chat</h1>
|
||||
<p><strong>Published:</strong> Sep 1, 2022</p>
|
||||
<h2 id="whats-new" tabindex="-1">What's new</h2>
|
||||
<ul>
|
||||
@@ -224,29 +277,80 @@
|
||||
<p>Evgeny</p>
|
||||
<p>SimpleX Chat founder</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX Chat v4.0 with encrypted database is released</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<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>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="SimpleX Chat v4.0 with encrypted database is released" />
|
||||
<meta property="og:url" content="/blog/20220928-simplex-chat-v4-encrypted-database.html" />
|
||||
|
||||
<meta property="og:image" content="./images/20220511-images-files.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="simplex-chat-v4-with-encrypted-local-database-is-released" tabindex="-1">SimpleX Chat v4 with encrypted local database is released</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="simplex-chat-v4-with-encrypted-local-database-is-released" tabindex="-1">SimpleX Chat v4 with encrypted local database is released</h1>
|
||||
<p><strong>Published:</strong> Sep 28, 2022</p>
|
||||
<h2 id="whats-new-in-v4" tabindex="-1">What's new in v4</h2>
|
||||
<ul>
|
||||
@@ -247,29 +300,80 @@
|
||||
<p>Evgeny</p>
|
||||
<p>SimpleX Chat founder</p>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
@@ -1,162 +1,215 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Security audit by Trail of Bits, the new website and v4.2 released</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blogs.css" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>SimpleX blog: Security audit by Trail of Bits, the new website and v4.2 released</title>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:title" content="Security audit by Trail of Bits, the new website and v4.2 released" />
|
||||
<meta property="og:url" content="/blog/20221108-simplex-chat-v4.2-security-audit-new-website.html" />
|
||||
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png" />
|
||||
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link rel="stylesheet" href="/css/blog.css" />
|
||||
<link href="/css/style.css" rel="stylesheet" />
|
||||
</head>
|
||||
|
||||
<body class="sm:bg-gray-100">
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<body class="bg-[#F3F6F7] dark:bg-[#0C0B13]">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
<section class="container">
|
||||
<div class="bg-white py-6 sm:py-12 sm:px-8 md:px-16 lg:px-20"><h1 id="security-audit-by-trail-of-bits-the-new-website-and-v42-released" tabindex="-1">Security audit by Trail of Bits, the new website and v4.2 released</h1>
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
|
||||
<div class="container px-5">
|
||||
<a class="inline-block text-grey-black dark:text-white my-5 underline underline-offset-2" href="/blog">< Back to list</a>
|
||||
</div>
|
||||
|
||||
<section id="article" class="container mb-[75px] bg-white dark:bg-[#17203D] px-5">
|
||||
<div class="py-6 md:p-[60px]"><h1 id="security-audit-by-trail-of-bits-the-new-website-and-v42-released" tabindex="-1">Security audit by Trail of Bits, the new website and v4.2 released</h1>
|
||||
<p><strong>Published:</strong> Nov 8, 2022</p>
|
||||
<p>Please note: This is work in progress to reserve permalink, to be published on November 8</p>
|
||||
<h2 id="security-audit-by-trail-of-bits" tabindex="-1">Security audit by Trail of Bits</h2>
|
||||
@@ -176,29 +229,80 @@
|
||||
<li>receive files faster (enable it in Privacy & Security settings)</li>
|
||||
</ul>
|
||||
</div>
|
||||
</section>
|
||||
<footer>
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="/img/simplex.svg" />
|
||||
<p class="copyright">
|
||||
© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="/img/icons/github.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="/img/icons/reddit.svg" /></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="/img/icons/twitter.svg" /></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="/img/icons/linkedin.svg" /></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="/img/icons/email.svg" /></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
||||
|
||||
BIN
blog/images/20220511-images-files.png
Normal file
|
After Width: | Height: | Size: 209 KiB |
BIN
blog/images/20220711-call.png
Normal file
|
After Width: | Height: | Size: 390 KiB |
1043
blog/index.html
@@ -1,327 +1,492 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en-US">
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<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>
|
||||
<meta name="description" content=""/>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8"/>
|
||||
<meta property="og:type" content="website"/>
|
||||
<meta property="og:title" content="SimpleX Chat - Contact"/>
|
||||
<meta property="og:description" content=""/>
|
||||
<meta property="og:image" content="https://simplex.chat/img/share_simplex.png"/>
|
||||
<meta name="twitter:card" content="summary"/>
|
||||
<meta property="og:url" content="https://simplex.chat/" />
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico"/>
|
||||
|
||||
<link rel="stylesheet" href="/css/swiper-bundle.min.css">
|
||||
<link href="/css/tailwind.css" rel="stylesheet"/>
|
||||
<link rel="stylesheet" href="/css/style.css">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>SimpleX chat: private, secure, no global identities</title>
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/img/favicon.ico">
|
||||
<meta
|
||||
name="description"
|
||||
content="Free open-source chat protocol and software - complete privacy, security and ownership of your contacts and messages."
|
||||
/>
|
||||
<meta name="Content-Type" content="text/html;charset=utf-8" />
|
||||
<meta name="twitter:card" content="summary" />
|
||||
<link href="/css/tailwind.css" rel="stylesheet" />
|
||||
<link href="../css/contact.css" rel="stylesheet" />
|
||||
<link href="../css/style.css" rel="stylesheet" />
|
||||
<script src="qrcode.js"></script>
|
||||
<script async defer src="index.js"></script>
|
||||
<script async defer src="https://buttons.github.io/buttons.js"></script>
|
||||
</head>
|
||||
|
||||
</head>
|
||||
<body class="bg-white dark:bg-[#0C0B13]">
|
||||
<section class="w-full bg-transparent fixed top-0 z-50">
|
||||
<header class="">
|
||||
<div class="flex items-center justify-end m-auto px-4 lg:px-7 h-[66px]">
|
||||
<a href="/" class="h-full hidden dark:hidden lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full hidden dark:lg:flex items-center mr-auto"><img class="w-auto h-[50px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
<a href="/" class="dark:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-light.svg" alt="" srcset=""></a>
|
||||
<a href="/" class="hidden dark:inline-block dark:lg:hidden lg:hidden mr-auto"><img class="h-[32px]" src="/img/new/logo-symbol-dark.svg" alt="" srcset=""></a>
|
||||
|
||||
<nav class="bg-[#F0F1F2] dark:bg-gradient-radial-mobile dark:lg:bg-none lg:bg-transparent fixed top-[66px] left-0 right-0 bottom-0 lg:top-0 lg:relative" id="menu">
|
||||
<div class="flex flex-col lg:flex-row justify-between lg:items-center gap-10 px-4 lg:px-7 h-full">
|
||||
<ul class="flex flex-col lg:flex-row lg:items-center gap-3 py-4 lg:py-0 lg:gap-10">
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/" class="flex items-center justify-between gap-2 lg:py-5 ">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Home</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<body>
|
||||
<header>
|
||||
<nav class="container">
|
||||
<div class="flex items-center gap-[16px] h-full">
|
||||
<a href="/">
|
||||
<img alt="simplex logo" class="logo" src="/img/simplex.svg" />
|
||||
</a>
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<div class="hidden lg:flex gap-[16px]">
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank">Whitepaper</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="tracking-[1px] rounded text-[1.4rem] font-medium blog-nav-btn" href="/blog">Blog</a>
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Developers</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/apps/simplex-bot-advanced/Main.hs"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat bot example</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>TypeScript SDK</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Terminal CLI</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SimpleXMQ</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative">
|
||||
<a href="javascript:void(0);" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] text-black dark:text-white before:bg-black dark:before:bg-white">Reference</span>
|
||||
<span href="" id="btn-mobile" class="flex items-center justify-center h-[36px] w-[36px] lg:h-auto lg:w-auto mt-1">
|
||||
<svg class="fill-black dark:fill-white" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.50447 0.902966C1.21571 0.627397 0.747525 0.627397 0.458761 0.902966C0.169996 1.17853 0.169996 1.62532 0.458761 1.90089L4.21933 5.48961C4.25543 5.52406 4.29433 5.5542 4.33533 5.58003C4.62234 5.76088 5.01237 5.73074 5.26504 5.48961L9.02561 1.90089C9.31438 1.62532 9.31438 1.17853 9.02561 0.902966C8.73685 0.627397 8.26867 0.627397 7.97991 0.902966L4.74219 3.99273L1.50447 0.902966Z"/>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
|
||||
<ul class="flex flex-col items-start gap-2 lg:h-fit lg:absolute lg:bg-white dark:lg:bg-black top-full lg:mt-[10px] lg:py-4 min-w-[180px] rounded-md lg:shadow-[0_0_3px_rgb(60_72_88_/_15%)] sub-menu">
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Whitepaper</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/simplex-messaging.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>SMP protocol</a></li>
|
||||
<li><a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank" class="py-[10px] lg:px-[20px]"
|
||||
>Chat protocol</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<hr class="dark:opacity-[0.1]" >
|
||||
|
||||
<li class="nav-link relative ">
|
||||
<a href="/blog" class="flex items-center justify-between gap-2 lg:py-5">
|
||||
<span class="text-[16px] leading-[26px] tracking-[0.01em] nav-link-text text-black dark:text-white before:bg-black dark:before:bg-white">Blog</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank" class="inline-block self-center text-white dark:text-black text-[16px] font-medium tracking-[0.02em] rounded-[34px] bg-primary-light dark:bg-primary-dark py-3 lg:py-2 px-20 lg:px-5 mb-16 lg:mb-0"
|
||||
>Donate</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="flex gap-4">
|
||||
<div class="nav__buttons">
|
||||
<div class="github">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/simplex-chat" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
<button href="#" class="flex items-center justify-center h-[36px] w-[36px] ml-10 theme-switch-btn">
|
||||
<img src="/img/new/sun.svg" alt="" srcset="" class="sun">
|
||||
<img src="/img/new/moon.svg" alt="" srcset="" class="moon">
|
||||
</button>
|
||||
|
||||
<div class="donate d-none-576">
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank">
|
||||
<span class="button">Donate</span></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="toggle self-stretch">
|
||||
<label class="toggle-btn"><span></span></i></label>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="w-full fixed top-[60px] z-[99] bg-[#fbd561] mobile-nav">
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 white-paper-nav-btn"
|
||||
href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md">Whitepaper</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 comparison-nav-btn"
|
||||
href="/#comparison">Comparison</a>
|
||||
<a class="flex-1 flex justify-center text-[1.2rem] tracking-[1px] font-medium text-base px-3 py-4 border-x-0 border-y-0 border-t-[1px] border-solid border-yellow-200 blog-nav-btn"
|
||||
href="/blog">Blog</a>
|
||||
<button href="" id="btn-mobile" class="flex lg:hidden items-center justify-center h-[36px] w-[36px] ml-10 nav-toggle-btn">
|
||||
<img src="/img/new/hamburger.svg" id="hamburger" alt="" srcset="">
|
||||
<svg class="fill-black dark:fill-white hidden" id="cross" width="13" height="13" viewBox="0 0 13 13" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M12.7973 11.5525L7.59762 6.49833L12.7947 1.44675C13.055 1.19371 13.0658 0.771991 12.8188 0.505331C12.5718 0.238674 12.1602 0.227644 11.8999 0.480681L6.65343 5.58028L1.09979 0.182228C0.839522 -0.070157 0.427909 -0.059127 0.18094 0.207531C-0.0660305 0.474191 -0.0552645 0.895911 0.205003 1.14894L5.70862 6.49833L0.20247 11.851C-0.0577975 12.104 -0.0685635 12.5257 0.178407 12.7924C0.306324 12.9306 0.477936 13 0.650181 13C0.811033 13 0.971873 12.9397 1.09726 12.817L6.65343 7.41639L11.9025 12.5186C12.0285 12.6406 12.1893 12.7015 12.3495 12.7015C12.5218 12.7015 12.6934 12.6321 12.8213 12.4939C13.0689 12.2273 13.0582 11.8062 12.7973 11.5525Z" />
|
||||
</svg>
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<script>
|
||||
const toggleBtn = document.querySelector(".toggle-btn")
|
||||
|
||||
toggleBtn.addEventListener("click", () => {
|
||||
if (toggleBtn.classList.contains("active-toggle-btn")) {
|
||||
console.log("unchecked")
|
||||
document.querySelector(".mobile-nav").classList.remove("mobile-nav-active")
|
||||
toggleBtn.classList.remove("active-toggle-btn")
|
||||
} else {
|
||||
console.log("checked")
|
||||
document.querySelector(".mobile-nav").classList.add("mobile-nav-active")
|
||||
toggleBtn.classList.add("active-toggle-btn")
|
||||
<SCript>
|
||||
// switch theme
|
||||
const sunIcon = document.querySelector('.sun');
|
||||
const moonIcon = document.querySelector('.moon');
|
||||
|
||||
const userTheme = localStorage.getItem('theme');
|
||||
const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
|
||||
const iconToggle = () => {
|
||||
sunIcon.classList.toggle('hidden');
|
||||
moonIcon.classList.toggle('hidden');
|
||||
}
|
||||
|
||||
const themeCheck = () => {
|
||||
if(userTheme === 'dark' || (!userTheme && systemTheme)){
|
||||
document.documentElement.classList.add('dark');
|
||||
moonIcon.classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
sunIcon.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
const themeSwitch = () => {
|
||||
if(document.documentElement.classList.contains('dark')){
|
||||
document.documentElement.classList.remove('dark');
|
||||
localStorage.setItem('theme','light');
|
||||
iconToggle();
|
||||
}
|
||||
else{
|
||||
document.documentElement.classList.add('dark');
|
||||
localStorage.setItem('theme','dark');
|
||||
iconToggle();
|
||||
}
|
||||
}
|
||||
|
||||
const nav = document.querySelector('header nav');
|
||||
window.addEventListener('click',(e)=>{
|
||||
if(e.target.closest('.nav-link')){
|
||||
if(e.target.closest('.nav-link').classList.contains('active')){
|
||||
e.target.closest('.nav-link').classList.remove('active');
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style>
|
||||
header {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* ====== NAV TOGGLE BUTTON ====== */
|
||||
.toggle {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.toggle-btn {
|
||||
height: 100%;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.toggle-btn span {
|
||||
width: 20px;
|
||||
height: 2px;
|
||||
background-color: #062d56;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.toggle-btn span::after,
|
||||
.toggle-btn span::before {
|
||||
content: "";
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: #062d56;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
span::before {
|
||||
top: -8px;
|
||||
}
|
||||
|
||||
span::after {
|
||||
top: 8px;
|
||||
}
|
||||
|
||||
/* ====== Styles Applied AFTER the CLICK of TOGGLE BUTTON ====== */
|
||||
.active-toggle-btn span {
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::before {
|
||||
top: 0;
|
||||
transform: rotate(45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.active-toggle-btn span::after {
|
||||
top: 0;
|
||||
transform: rotate(-45deg);
|
||||
background-color: #062d56;
|
||||
}
|
||||
|
||||
.mobile-nav {
|
||||
display: none;
|
||||
transform: translateX(-100%);
|
||||
transition: transform 0.5s ease-out;
|
||||
}
|
||||
|
||||
.mobile-nav-active {
|
||||
display: block;
|
||||
transform: translateX(0%);
|
||||
transition: transform 0.5s cubic-bezier(0.02, 0.48, 0.59, 1.48);
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.toggle {
|
||||
display: inline-block;
|
||||
else{
|
||||
document.querySelectorAll('.nav-link').forEach(el => el.classList.remove('active'))
|
||||
e.target.closest('.nav-link').classList.add('active');
|
||||
}
|
||||
}
|
||||
</style>
|
||||
else if(e.target.closest('.nav-toggle-btn')){
|
||||
document.body.classList.toggle('lock-scroll');
|
||||
if(nav.classList.contains('open')){
|
||||
nav.classList.remove('open');
|
||||
document.getElementById('hamburger').classList.remove('hidden');
|
||||
document.getElementById('cross').classList.add('hidden');
|
||||
}
|
||||
else{
|
||||
nav.classList.add('open');
|
||||
document.getElementById('hamburger').classList.add('hidden');
|
||||
document.getElementById('cross').classList.remove('hidden');
|
||||
}
|
||||
}
|
||||
else if(e.target.closest('.theme-switch-btn')){
|
||||
themeSwitch();
|
||||
}
|
||||
})
|
||||
|
||||
themeCheck();
|
||||
|
||||
const changeHeaderBg = ()=>{
|
||||
const header = document.querySelector('header')
|
||||
const scrollValue = window.scrollY
|
||||
if(scrollValue > 5){
|
||||
header.classList.add('bg-primary-bg-light');
|
||||
header.classList.add('dark:bg-primary-bg-dark');
|
||||
}
|
||||
else{
|
||||
header.classList.remove('bg-primary-bg-light');
|
||||
header.classList.remove('dark:bg-primary-bg-dark');
|
||||
}
|
||||
}
|
||||
|
||||
window.addEventListener('scroll',changeHeaderBg);
|
||||
</SCript>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
<script src="/js/qrcode.js"></script>
|
||||
<script async defer src="/js/contact.js"></script>
|
||||
|
||||
|
||||
<section id="conn_req">
|
||||
<div class="container">
|
||||
<h2>This link is the <span class=conn_mode>invitation from</span> a SimpleX Chat user</h2>
|
||||
<div class="app__links">
|
||||
<a href="https://apps.apple.com/us/app/simplex-chat/id1605771084" target="_blank"><img src="../img/apple_store.svg" height="42"></a>
|
||||
<a href="https://play.google.com/store/apps/details?id=chat.simplex.app" target="_blank"><img src="../img/google_play.svg" height="41"></a>
|
||||
<a href="https://app.simplex.chat" target="_blank" title="SimpleX F-Droid Repository"><img src="../img/f_droid.svg" height="41"></a>
|
||||
<a href="https://testflight.apple.com/join/DWuT2LQu" target="_blank" title="Public iOS preview on TestFlight"><img src="../img/testflight.png" width="41" height="41"></a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/releases/latest/download/simplex.apk" target="_blank"><img src="../img/apk_icon.png" width="41" height="41"></a>
|
||||
</div>
|
||||
<div class="conn_req_uri">
|
||||
<div class="d-none-992">
|
||||
<p>If you already installed <a class="chat-for-terminal"
|
||||
href="https://github.com/simplex-chat/simplex-chat">SimpleX Chat for the
|
||||
terminal</a> v1.0.0+, copy the command below and use it in the chat:
|
||||
</p>
|
||||
|
||||
<p class="content_copy_with_tooltip">
|
||||
<textarea readonly class="content" id="conn_req_uri_text"></textarea>
|
||||
<span class="tooltip">
|
||||
<span class="tooltiptext" id="copy_conn_req_uri_tooltip">Copy to clipboard</span>
|
||||
<img class="content_copy" id="copy_conn_req_uri" src="../img/icons/content-copy.svg">
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="conn_req__qrcode">
|
||||
<img class="d-none-576" src="../img/mobile.png" alt="">
|
||||
<div>
|
||||
<p class="d-none-576">Scan QR code from mobile app</p>
|
||||
<p class="d-none-on-mobile">
|
||||
To make a connection:
|
||||
<section class="hidden xl:block h-screen pt-[66px] bg-white dark:bg-gradient-radial-mobile dark:lg:bg-gradient-radial">
|
||||
<div class="container m-auto h-full flex items-center justify-between px-5">
|
||||
<div class="flex flex-col items-start justify-center w-full h-full">
|
||||
<p class="text-[38px] leading-[43px] font-bold max-w-[500px] mb-[30px] primary-header-contact">You have been sent a link to connect on SimpleX Chat</p>
|
||||
<p class="text-[20px] leading-[28px] text-[#606C71] dark:text-white font-bold max-w-[475px] mb-[80px] secondary-header-contact">Scan the QR code with the SimpleX Chat app on your phone or tablet.</p>
|
||||
<p class="text-grey-black dark:text-white text-base mb-[16px]">
|
||||
The public keys and message queue address in this link are NOT sent over the network when you view this page —
|
||||
they are contained in the hash fragment of the link URL.
|
||||
</p>
|
||||
<ol class="d-none-on-mobile">
|
||||
<li>install SimpleX app</li>
|
||||
<li>tap the button below</li>
|
||||
<li>tap <strong>Connect</strong> button in the app</li>
|
||||
</ol>
|
||||
<div class="open-in-mobile">
|
||||
<a id="mobile_conn_req_uri" href="" target="_blank">
|
||||
<span class="button">Connect in SimpleX app</span></a>
|
||||
<p class="text-grey-black dark:text-white text-base">Not downloaded the SimpleX Chat yet?</p>
|
||||
<p class="text-grey-black dark:text-white text-base mb-[24px]">Use the links below to download the app.</p>
|
||||
|
||||
<div class="flex items-center justify-center gap-4 flex-wrap">
|
||||
<a href="https://apps.apple.com/us/app/simplex-chat/id1605771084" target="_blank"><img class="h-[40px] w-auto" src="/img/new/apple_store.svg" /></a>
|
||||
<a href="https://play.google.com/store/apps/details?id=chat.simplex.app" target="_blank" title="Public iOS preview on TestFlight"><img class="h-[40px] w-auto" src="/img/new/google_play.svg" /></a>
|
||||
<a href="https://app.simplex.chat" target="_blank" title="SimpleX F-Droid Repository"><img class="h-[40px] w-auto" src="/img/new/f_droid.svg" /></a>
|
||||
<a href="https://testflight.apple.com/join/DWuT2LQu" target="_blank"><img class="h-[40px] w-auto" src="/img/new/testflight.png" /></a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/releases/latest/download/simplex.apk" target="_blank"><img class="h-[40px] w-auto" src="/img/new/apk_icon.png" /></a>
|
||||
</div>
|
||||
<canvas id="conn_req_uri_qrcode" class="d-none-576"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section id="install_chat">
|
||||
<div class="container">
|
||||
<h2>To install SimpleX Chat for the terminal</h2>
|
||||
<div class="install__command d-none-576">
|
||||
<p>
|
||||
use this command:
|
||||
</p>
|
||||
<div class="content_copy_with_tooltip install">
|
||||
<p class="content">curl -o- https://raw.githubusercontent.com/simplex-chat/simplex-chat/master/install.sh
|
||||
|
|
||||
bash
|
||||
<span class="tooltip">
|
||||
<span class="tooltiptext">Copy to clipboard</span>
|
||||
<img class="content_copy" src="../img/icons/content-copy.svg">
|
||||
</span>
|
||||
</p>
|
||||
<div class="h-full pt-[30px] w-[630px] relative">
|
||||
<div class="relative h-full w-[inherit] flex items-center justify-center">
|
||||
<div class="absolute mt-[-100px]">
|
||||
<img class="" src="/img/new/contact_page_mobile.png" alt="">
|
||||
</div>
|
||||
|
||||
<div class="z-10 flex flex-col items-center pt-[40px] ml-[-15px]">
|
||||
<p class="text-base font-medium">Scan QR code from mobile app</p>
|
||||
<canvas class="conn_req_uri_qrcode"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="github__redirection">
|
||||
<p>
|
||||
See SimpleX Chat
|
||||
<a href="https://github.com/simplex-chat/simplex-chat">GitHub repository</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat" class="github"><img src="../img/icons/github.svg"></a>
|
||||
for the instructions how to download or compile it from the source code.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="simplex">
|
||||
<div class="container">
|
||||
<article id="use-simplex" class="half">
|
||||
<h3>Use SimpleX</h3>
|
||||
<p>
|
||||
SimpleX chat terminal client
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/releases/tag/v2.0.0" target="_blank">v2.0.0</a> is
|
||||
released!<br />
|
||||
– groups and files<br />
|
||||
– two-layer E2E encryption, with double-ratchet algorithm<br />
|
||||
– protocol is compatible with mobile apps<br />
|
||||
</p>
|
||||
<p>
|
||||
You can use our servers or deploy your own, e.g. using
|
||||
<a href="https://github.com/simplex-chat/simplexmq#deploy-smp-server-on-linode" target="_blank">
|
||||
StackScript on Linode</a>.
|
||||
</p>
|
||||
<p>
|
||||
Sign up to be updated about the new releases.
|
||||
</p>
|
||||
<form class="sign-up"
|
||||
action="https://chat.us2.list-manage.com/subscribe/post?u=ddd892b258ae36e5438e6d4e1&id=ad6037a2fe"
|
||||
method="post" target="_blank" novalidate>
|
||||
<div>
|
||||
<input name="EMAIL" placeholder="Your email" />
|
||||
|
||||
<section class="block xl:hidden pt-[106px] pb-[90px] bg-white dark:bg-gradient-radial-mobile dark:lg:bg-gradient-radial">
|
||||
<div class="container m-auto h-full px-5">
|
||||
<div class="flex flex-col items-center">
|
||||
<p class="text-[28px] font-bold text-center max-w-[602px] mb-[40px] primary-header-contact">You have been sent a link to connect on SimpleX Chat</p>
|
||||
<p class="text-[20px] leading-[28px] text-grey-black dark:text-white font-medium mb-[30px]">To make a connection:</p>
|
||||
|
||||
<div class="flex flex-col justify-center items-center p-4 w-full max-w-[468px] min-h-[131px] rounded-[30px] border-[1px] border-[#A8B0B4] dark:border-white border-opacity-60 mb-6 relative">
|
||||
<p class="text-xl font-medium text-grey-black dark:text-white mb-4">Install SimpleX app</p>
|
||||
<div class="flex flex-wrap items-center justify-center gap-2">
|
||||
<a class="apple-store-btn hidden" href="https://apps.apple.com/us/app/simplex-chat/id1605771084" target="_blank"><img class="h-[40px] w-auto" src="/img/new/apple_store.svg" /></a>
|
||||
<a class="google-play-btn hidden" href="https://play.google.com/store/apps/details?id=chat.simplex.app" target="_blank" title="Public iOS preview on TestFlight"><img class="h-[40px] w-auto" src="/img/new/google_play.svg" /></a>
|
||||
<a class="f-droid-btn hidden" href="https://app.simplex.chat" target="_blank" title="SimpleX F-Droid Repository"><img class="h-[40px] w-auto" src="/img/new/f_droid.svg" /></a>
|
||||
</div>
|
||||
|
||||
<div class="absolute bg-[#0197FF] h-[44px] w-[44px] rounded-full flex items-center justify-center top-0 left-0 translate-x-[-30%] translate-y-[-30%]">
|
||||
<p class="text-base text-white font-bold leading-[36px]">1</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col justify-center items-center w-full max-w-[468px] h-[131px] rounded-[30px] border-[1px] border-[#A8B0B4] dark:border-white border-opacity-60 mb-6 relative">
|
||||
<p class="text-xl font-medium text-grey-black dark:text-white mb-4">Connect in app</p>
|
||||
<a id="mobile_conn_req_uri" class="bg-[#0053D0] text-white py-3 px-8 rounded-[34px] h-[44px] text-[16px] leading-[19px] tracking-[0.02em]">Open Simplex app</a>
|
||||
|
||||
<div class="absolute bg-[#0197FF] h-[44px] w-[44px] rounded-full flex items-center justify-center top-0 left-0 translate-x-[-30%] translate-y-[-30%]">
|
||||
<p class="text-base text-white font-bold leading-[36px]">2</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col justify-center items-center w-full max-w-[468px] h-[131px] rounded-[30px] border-[1px] border-[#A8B0B4] dark:border-white border-opacity-60 relative">
|
||||
<p class="text-xl font-medium text-grey-black dark:text-white max-w-[230px] text-center">Tap the <span class="text-active-blue">‘connect’</span> button in the app</p>
|
||||
|
||||
<div class="absolute bg-[#0197FF] h-[44px] w-[44px] rounded-full flex items-center justify-center top-0 left-0 translate-x-[-30%] translate-y-[-30%]">
|
||||
<p class="text-base text-white font-bold leading-[36px]">3</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<section class="hidden md:block bg-secondary-bg-light dark:bg-secondary-bg-dark py-[20px]">
|
||||
<div class="container px-5">
|
||||
<div class="text-grey-black dark:text-white">
|
||||
|
||||
|
||||
<div class="hidden md:block xl:hidden for-tablet">
|
||||
<div class="contact-tab">
|
||||
<div class="flex items-center justify-between my-[40px] contact-tab-btn cursor-pointer">
|
||||
<p class="text-xl font-bold">Scan the QR code with the SimpleX Chat app</p>
|
||||
<svg class="fill-grey-black dark:fill-white" width="10" height="5" viewBox="0 0 10 5" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.40813 4.79332C8.69689 5.06889 9.16507 5.06889 9.45384 4.79332C9.7426 4.51775 9.7426 4.07097 9.45384 3.7954L5.69327 0.206676C5.65717 0.17223 5.61827 0.142089 5.57727 0.116255C5.29026 -0.064587 4.90023 -0.0344467 4.64756 0.206676L0.886983 3.7954C0.598219 4.07097 0.598219 4.51775 0.886983 4.79332C1.17575 5.06889 1.64393 5.06889 1.93269 4.79332L5.17041 1.70356L8.40813 4.79332Z"/>
|
||||
</svg>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="contact-tab-content flex flex-col gap-10">
|
||||
<p class="text-base mb-5">
|
||||
The public keys and message queue address in this link are NOT sent over the network when you view this page —<br>
|
||||
they are contained in the hash fragment of the link URL.
|
||||
</p>
|
||||
<canvas class="self-center conn_req_uri_qrcode"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="hidden xl:block">
|
||||
<div class="contact-tab">
|
||||
<div class="flex items-center justify-between my-[40px] contact-tab-btn cursor-pointer">
|
||||
<p class="text-xl font-bold">Installing SimpleX chat to terminal</p>
|
||||
<svg class="fill-grey-black dark:fill-white" width="10" height="5" viewBox="0 0 10 5" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.40813 4.79332C8.69689 5.06889 9.16507 5.06889 9.45384 4.79332C9.7426 4.51775 9.7426 4.07097 9.45384 3.7954L5.69327 0.206676C5.65717 0.17223 5.61827 0.142089 5.57727 0.116255C5.29026 -0.064587 4.90023 -0.0344467 4.64756 0.206676L0.886983 3.7954C0.598219 4.07097 0.598219 4.51775 0.886983 4.79332C1.17575 5.06889 1.64393 5.06889 1.93269 4.79332L5.17041 1.70356L8.40813 4.79332Z"/>
|
||||
</svg>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="contact-tab-content">
|
||||
<p class="text-base mb-4">Use this command:</p>
|
||||
<p class="bg-white flex items-center justify-between rounded p-3 shadow-[inset_0px_2px_2px_rgba(0,0,0,0.15)] mb-8">
|
||||
<span class="text-grey-black font-light text-[14px] leading-6">curl -o- https://raw.githubusercontent.com/simplex-chat/simplex-chat/master/install.sh | bash</span>
|
||||
<!-- <img class="content_copy" src="/img/new/content-copy.svg" /> -->
|
||||
</p>
|
||||
|
||||
<p class="flex text-base font-medium mb-[76px]">See SimpleX Chat
|
||||
<a href="" class="flex gap-1 no-underline">
|
||||
<span class="text-primary-light dark:text-primary-dark underline underline-offset-4 text-base font-medium">GitHub repository</span>
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="24" height="24" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
|
||||
the instructions how to download or compile it from the source code.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="block mb-7 dark:opacity-[0.2] w-full">
|
||||
|
||||
<div class="contact-tab">
|
||||
<div class="flex items-center justify-between my-[40px] contact-tab-btn cursor-pointer">
|
||||
<p class="text-xl font-bold">If you already installed SimpleX Chat for the terminal</p>
|
||||
<svg class="fill-grey-black dark:fill-white" width="10" height="5" viewBox="0 0 10 5" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.40813 4.79332C8.69689 5.06889 9.16507 5.06889 9.45384 4.79332C9.7426 4.51775 9.7426 4.07097 9.45384 3.7954L5.69327 0.206676C5.65717 0.17223 5.61827 0.142089 5.57727 0.116255C5.29026 -0.064587 4.90023 -0.0344467 4.64756 0.206676L0.886983 3.7954C0.598219 4.07097 0.598219 4.51775 0.886983 4.79332C1.17575 5.06889 1.64393 5.06889 1.93269 4.79332L5.17041 1.70356L8.40813 4.79332Z"/>
|
||||
</svg>
|
||||
</div>
|
||||
|
||||
<div class="contact-tab-content">
|
||||
<p class="text-base font-medium mb-[46px]">If you already installed
|
||||
<a href="" class="text-base font-medium">SimpleX Chat for the terminal</a>
|
||||
v1.0.0+, copy the command below and use it in the chat:
|
||||
</p>
|
||||
<p class="bg-white flex items-center justify-between rounded p-3 shadow-[inset_0px_2px_2px_rgba(0,0,0,0.15)] mb-[36px]">
|
||||
<span id="conn_req_uri_text" class="text-grey-black font-light text-[14px] leading-6">/c https://simplex.chat/contact#/?v=1&smp=smp://u2dS9sG8nMNURyZwqASV4yROM28Er0luVTx5X1CsMrU=@smp4.simplex.im/KBCmxJ3-lEjpWLPPkI6OWPk-YJneU5uY%23MCowBQYDK2VuAyEAtixHJWDXvYWcoe-77vIfjvI6XWEuzUsapMS9nVHP_Go=</span>
|
||||
<!-- <img class="content_copy" src="/img/new/content-copy.svg" /> -->
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
|
||||
<section class="bg-primary-bg-light dark:bg-primary-bg-dark py-[85px] px-5">
|
||||
<div class="container flex flex-col items-center">
|
||||
<p class="text-[35px] lg:text-[45px] text-grey-black dark:text-white text-center font-bold mb-4"><span class="text-active-blue">Join</span> SimpleX</p>
|
||||
<p class="text-black dark:text-white text-base text-center mb-10">We invite you to join the conversion</p>
|
||||
|
||||
<div class="flex flex-col items-center gap-5 self-stretch mb-10">
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" class="flex items-center justify-center h-11 w-full max-w-[294px] font-medium text-base rounded-[34px] tracking-[0.02em] text-primary-light dark:text-primary-dark dark:bg-primary-bg-dark dark:border-primary-dark dark:border bg-[#D9ECFF]">Join the REDDIT community</a>
|
||||
<a href="https://github.com/simplex-chat" class="flex items-center justify-center h-11 w-full max-w-[294px] font-medium text-base rounded-[34px] tracking-[0.02em] text-primary-light dark:text-primary-dark dark:bg-primary-bg-dark dark:border-primary-dark dark:border bg-[#D9ECFF]">Join us on GitHub</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations" class="flex items-center justify-center h-11 w-full max-w-[294px] font-medium text-base rounded-[34px] tracking-[0.02em] text-primary-light dark:text-primary-dark dark:bg-primary-bg-dark dark:border-primary-dark dark:border-none bg-white dark:bg-[rgba(112,240,249,0.2)] border border-[#0053D0]">Donate here to help us</a>
|
||||
</div>
|
||||
|
||||
<p class="text-black dark:text-white text-base text-center mb-5">Sign up to receive our updates</p>
|
||||
|
||||
<form class="flex items-center w-full max-w-[540px] mb-4"
|
||||
action="https://chat.us2.list-manage.com/subscribe/post?u=ddd892b258ae36e5438e6d4e1&id=ad6037a2fe"
|
||||
method="post" target="_blank" novalidate>
|
||||
<input name="EMAIL" type="text" class="h-[44px] rounded-l-[34px] bg-transparent border border-primary-light focus:outline-none text-primary-light dark:text-primary-dark text-base w-full max-w-[400px] px-5"
|
||||
placeholder="Enter your email address">
|
||||
<span style="position: absolute; left: -5000px" aria-hidden="true">
|
||||
<input type="text" name="b_ddd892b258ae36e5438e6d4e1_ad6037a2fe" tabindex="-1" value="" />
|
||||
<input type="text" name="b_ddd892b258ae36e5438e6d4e1_ad6037a2fe" tabindex="-1" value="" />
|
||||
</span>
|
||||
<button type="submit">Submit</button>
|
||||
</div>
|
||||
<input type="submit" class="h-[44px] rounded-r-[34px] bg-primary-light text-white text-center px-8">
|
||||
</form>
|
||||
</article>
|
||||
|
||||
<article id="join-simplex" class="half">
|
||||
<h3>Join SimpleX</h3>
|
||||
<p>
|
||||
The project can move faster with your help.<br />
|
||||
We develop it in Haskell.
|
||||
</p>
|
||||
<hr class="block my-10 mx-5 dark:opacity-[0.2] w-full">
|
||||
|
||||
<div id="contacts">
|
||||
<p>
|
||||
<a href="mailto:chat@simplex.chat">
|
||||
<span class="button">Email</span> chat@simplex.chat</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat" target="_blank"><span
|
||||
class="button">Join</span> github.com/simplex-chat</a>
|
||||
</p>
|
||||
<p>
|
||||
<a href="https://opencollective.com/simplex-chat" target="_blank"><span class="button">Donate</span>
|
||||
opencollective.com/simplex-chat</a> <strong>(now accepts crypto)</strong>
|
||||
</p>
|
||||
<p class="text-black dark:text-white text-center mb-5">Get SimpleX</p>
|
||||
<div class="flex items-center justify-center gap-4 flex-wrap">
|
||||
<a href="https://apps.apple.com/us/app/simplex-chat/id1605771084" target="_blank"><img class="h-[40px] w-auto" src="/img/new/apple_store.svg" /></a>
|
||||
<a href="https://play.google.com/store/apps/details?id=chat.simplex.app" target="_blank" title="Public iOS preview on TestFlight"><img class="h-[40px] w-auto" src="/img/new/google_play.svg" /></a>
|
||||
<a href="https://app.simplex.chat" target="_blank" title="SimpleX F-Droid Repository"><img class="h-[40px] w-auto" src="/img/new/f_droid.svg" /></a>
|
||||
<a href="https://testflight.apple.com/join/DWuT2LQu" target="_blank"><img class="h-[40px] w-auto" src="/img/new/testflight.png" /></a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/releases/latest/download/simplex.apk" target="_blank"><img class="h-[40px] w-auto" src="/img/new/apk_icon.png" /></a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<footer>
|
||||
|
||||
<section class="bg-[#D9E7ED] dark:bg-[#0E2B57] py-[50px]">
|
||||
<div class="container">
|
||||
<img alt="simplex logo" class="logo d-none-992" src="../img/simplex.svg" />
|
||||
<p class="copyright">© 2020-22 SimpleX | Open-Source Project <span class="d-none-576">|</span>
|
||||
<a class="d-none-576" href="https://github.com/simplex-chat" target="_blank"><img
|
||||
src="../img/icons/github.svg"></a>
|
||||
<a class="d-none-576" href="https://www.reddit.com/r/SimpleXChat/" target="_blank"><img
|
||||
src="../img/icons/reddit.svg"></a>
|
||||
<a class="d-none-576" href="https://twitter.com/simplexchat" target="_blank"><img
|
||||
src="../img/icons/twitter.svg"></a>
|
||||
<a class="d-none-576" href="https://www.linkedin.com/company/simplex-chat/" target="_blank"><img
|
||||
src="../img/icons/linkedin.svg"></a>
|
||||
<a class="d-none-576" href="mailto:chat@simplex.chat" target="_blank"><img src="../img/icons/email.svg"></a>
|
||||
</p>
|
||||
<div class="github d-none-992">
|
||||
<a class="github-button" href="https://github.com/simplex-chat/protocol" data-size="large"
|
||||
data-show-count="true" aria-label="Star simplex-chat on GitHub">Star</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
</body>
|
||||
<div class="flex flex-col lg:flex-row justify-between">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="/" class="h-full mb-14 dark:hidden"><img class="w-auto h-[32px]" src="/img/new/logo-light.png" alt="logo" /></a>
|
||||
<a href="/" class="h-full mb-14 hidden dark:inline-block"><img class="w-auto h-[32px]" src="/img/new/logo-dark.png" alt="logo" /></a>
|
||||
|
||||
<div class="flex flex-col items-center lg:items-start lg:flex-row gap-[150px] lg:gap-[350px]">
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplexmq/blob/stable/protocol/overview-tjr.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Whitepaper</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/protocol/simplex-chat.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
SimpleX Chat protocol</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/PRIVACY.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terms & Privacy Policy</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat#help-us-with-donations"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Donate</a>
|
||||
</div>
|
||||
<div class="flex flex-col items-center lg:items-start">
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/blob/stable/docs/CLI.md"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
Terminal CLI</a>
|
||||
<a href="https://github.com/simplex-chat/simplex-chat/tree/stable/packages/simplex-chat-client/typescript"
|
||||
target="_blank"
|
||||
class="text-grey-black dark:text-white text-[14px] font-medium leading-[28px] tracking-[0.01em] mb-3">
|
||||
TypeScript SDK</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<article class="mt-10 lg:mt-0">
|
||||
<div class="h-[40px] flex gap-4 justify-center">
|
||||
<a href="https://github.com/simplex-chat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M20.2907 0.926758C9.24635 0.926758 0.290527 10.1075 0.290527 21.4331C0.290527 30.4933 6.02118 38.18 13.9679 40.8915C14.9674 41.0813 15.3344 40.4467 15.3344 39.905C15.3344 39.4161 15.3158 37.8007 15.3072 36.0872C9.74314 37.3277 8.56906 33.6677 8.56906 33.6677C7.65927 31.2975 6.3484 30.6672 6.3484 30.6672C4.53379 29.3945 6.48519 29.4206 6.48519 29.4206C8.49355 29.5653 9.55105 31.5338 9.55105 31.5338C11.3349 34.6688 14.2298 33.7624 15.3711 33.2385C15.5506 31.9131 16.069 31.0085 16.6409 30.4964C12.1986 29.9779 7.52878 28.2195 7.52878 20.3621C7.52878 18.1232 8.31007 16.294 9.58947 14.8579C9.38181 14.3414 8.69723 12.2557 9.78322 9.43111C9.78322 9.43111 11.4627 8.87998 15.2847 11.5331C16.8801 11.0787 18.591 10.8509 20.2907 10.8431C21.9904 10.8509 23.7027 11.0787 25.301 11.5331C29.1183 8.87998 30.7955 9.43111 30.7955 9.43111C31.8842 12.2557 31.1992 14.3414 30.9916 14.8579C32.274 16.294 33.05 18.1232 33.05 20.3621C33.05 28.2382 28.3712 29.9724 23.9176
|
||||
30.4801C24.635 31.1165 25.2742 32.3644 25.2742 34.2776C25.2742 37.0214 25.251 39.2296 25.251 39.905C25.251 40.4507 25.611 41.0902 26.6248 40.8888C34.5672 38.1742 40.2905 30.4903 40.2905 21.4331C40.2905 10.1075 31.336 0.926758 20.2907 0.926758Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.reddit.com/r/SimpleXChat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.874 40.9268C31.9197 40.9268 40.874 31.9724 40.874 20.9268C40.874 9.88108 31.9197 0.926758 20.874 0.926758C9.82834 0.926758 0.874023 9.88108 0.874023 20.9268C0.874023 31.9724 9.82834 40.9268 20.874 40.9268ZM30.4091 16.615C31.9031 16.615 33.1157 17.8276 33.1157 19.3216C33.1157 20.426 32.4445 21.3787 31.5567 21.8118C31.6 22.0716 31.6217 22.3315 31.6217 22.613C31.6217 26.7705 26.7929 30.1268 20.8165 30.1268C14.8402 30.1268 10.0114 26.7705 10.0114 22.613C10.0114 22.3315 10.0331 22.05 10.0764 21.7902C9.12362 21.3571 8.47402 20.426 8.47402 19.3216C8.47402 17.8276 9.68662 16.615 11.1807 16.615C11.8953 16.615 12.5665 16.9181 13.0429 17.3728C14.9051 16.0086 17.4819 15.1642 20.3618 15.0776L21.726 8.6248C21.7693 8.49488 21.8343 8.3866 21.9425 8.32164C22.0508 8.25668 22.1807 8.23504 22.3106 8.25668L26.7929 9.20944C27.0961 8.55984 27.7457 8.12676 28.5035 8.12676C29.5646 8.12676 30.4307 8.99292 30.4307
|
||||
10.0539C30.4307 11.115 29.5646 11.9811 28.5035 11.9811C27.4642 11.9811 26.6197 11.1582 26.5764 10.1406L22.5705 9.29604L21.3362 15.0776C24.1512 15.1858 26.7063 16.052 28.5469 17.3728C29.0232 16.8964 29.6728 16.615 30.4091 16.615ZM16.5291 19.3216C15.4681 19.3216 14.602 20.1878 14.602 21.2488C14.602 22.3098 15.4681 23.176 16.5291 23.176C17.5902 23.176 18.4563 22.3098 18.4563 21.2488C18.4563 20.1878 17.5902 19.3216 16.5291 19.3216ZM20.7949 27.7449C21.5311 27.7449 24.0429 27.6582 25.3638 26.3374C25.5587 26.1425 25.5587 25.8394 25.4071 25.6228C25.2122 25.428 24.8874 25.428 24.6925 25.6228C23.848 26.4456 22.0941 26.7488 20.8165 26.7488C19.539 26.7488 17.7634 26.4456 16.9405 25.6228C16.7457 25.428 16.4209 25.428 16.226 25.6228C16.0311 25.8177 16.0311 26.1425 16.226 26.3374C17.5252 27.6366 20.0587 27.7449 20.7949 27.7449ZM23.0902 21.2488C23.0902 22.3098 23.9563 23.176 25.0173 23.176C26.0783 23.176 26.9445 22.3098 26.9445 21.2488C26.9445 20.1878 26.0783
|
||||
19.3216 25.0173 19.3216C23.9563 19.3216 23.0902 20.1878 23.0902 21.2488Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://twitter.com/simplexchat" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.4575 40.9268C31.5032 40.9268 40.4575 31.9725 40.4575 20.9268C40.4575 9.88106 31.5032 0.926758 20.4575 0.926758C9.41182 0.926758 0.45752 9.88106 0.45752 20.9268C0.45752 31.9725 9.41182 40.9268 20.4575 40.9268ZM29.916 16.7766C29.916 23.1157 25.014 30.4265 16.0519 30.4265V30.423C13.4038 30.4265 10.8115 29.6795 8.58252 28.2719C8.96846 28.3174 9.35558 28.3397 9.74271 28.3409C11.9372 28.3432 14.0688 27.6182 15.7942 26.283C13.7101 26.2444 11.8802 24.9055 11.2425 22.9507C11.9716 23.0898 12.7245 23.0619 13.4418 22.869C11.1689 22.4165 9.53371 20.4504 9.53252 18.1671V18.1062C10.2106 18.478 10.9694 18.6835 11.7448 18.7057C9.60377 17.2981 8.94233 14.4948 10.2355 12.3026C12.7103 15.2992 16.3606 17.1207 20.2782 17.3147C19.8851 15.6487 20.4231 13.902 21.6878 12.7306C23.6507 10.9137 26.737 11.0073 28.5824 12.9387C29.6737 12.7271 30.7199 12.3327 31.677 11.7738C31.3125 12.8857 30.5513 13.828 29.5348 14.4277C30.5002
|
||||
14.3155 31.4443 14.0609 32.3325 13.6728C31.6782 14.6362 30.8553 15.4781 29.9017 16.1562C29.916 16.362 29.916 16.5685 29.916 16.7766Z" />
|
||||
</svg>
|
||||
</a>
|
||||
<a href="https://www.linkedin.com/company/simplex-chat/" target="_blank">
|
||||
<svg class="fill-primary-light dark:fill-primary-dark" width="40" height="40" viewBox="0 0 41 41" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0408 0.926758C8.9951 0.926758 0.0407715 9.88109 0.0407715 20.9268C0.0407715 31.9724 8.9951 40.9268 20.0408 40.9268C31.0864 40.9268 40.0408 31.9724 40.0408 20.9268C40.0408 9.88109 31.0864 0.926758 20.0408 0.926758ZM9.6421 17.4916H14.1745V31.1098H9.6421V17.4916ZM14.4731 13.279C14.4437 11.9438 13.4889 10.9268 11.9383 10.9268C10.3878 10.9268 9.3741 11.9438 9.3741 13.279C9.3741 14.5866 10.3579 15.6328 11.8794 15.6328H11.9084C13.4889 15.6328 14.4731 14.5866 14.4731 13.279ZM25.3017 17.1718C28.2843 17.1718 30.5203 19.1187 30.5203 23.3015L30.5201 31.1098H25.9879V23.824C25.9879 21.994 25.3319 20.7453 23.6912 20.7453C22.439 20.7453 21.6932 21.5871 21.3656 22.4003C21.2458 22.6916 21.2164 23.0976 21.2164 23.5046V31.1101H16.6834C16.6834 31.1101 16.7431 18.7698 16.6834 17.492H21.2164V19.4208C21.8179 18.4936 22.8953 17.1718 25.3017 17.1718Z" />
|
||||
</svg>
|
||||
</a>
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
<a href="#" class="text-grey-black dark:text-white text-[16px] text-center lg:text-left font-medium leading-[28px] tracking-[0.01em] block mt-[60px]">© 2020-2022 SimpleX | Open-Source Project</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<script src="/js/animation.js"></script>
|
||||
<script src="/js/swiper-bundle.min.js"></script>
|
||||
<script src="/js/script.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,67 +0,0 @@
|
||||
(function () {
|
||||
|
||||
let complete = false
|
||||
run()
|
||||
window.onload = run
|
||||
|
||||
async function run() {
|
||||
const connURIel = document.getElementById("conn_req_uri_text");
|
||||
const mobileConnURIanchor = document.getElementById("mobile_conn_req_uri");
|
||||
const connQRCode = document.getElementById("conn_req_uri_qrcode");
|
||||
if (complete || !connURIel || !mobileConnURIanchor || !connQRCode) return
|
||||
complete = true
|
||||
const connURI = document.location.toString().replace(/\/(contact|invitation)\//, "/$1");
|
||||
connURIel.innerText = "/c " + connURI;
|
||||
mobileConnURIanchor.href = connURI.replace("https://simplex.chat", "simplex:");
|
||||
if (document.location.pathname.indexOf("/contact") >= 0) {
|
||||
let connModeEl = document.querySelector("#conn_req .conn_mode")
|
||||
if (connModeEl) connModeEl.innerText = "address of";
|
||||
}
|
||||
const els = document.querySelectorAll(".content_copy_with_tooltip");
|
||||
if (navigator.clipboard) {
|
||||
els.forEach(contentCopyWithTooltip)
|
||||
} else {
|
||||
const tooltips = document.querySelectorAll(".content_copy_with_tooltip .tooltip");
|
||||
tooltips.forEach(el => el.style.visibility = "hidden")
|
||||
}
|
||||
|
||||
try {
|
||||
await QRCode.toCanvas(connQRCode, connURI, {
|
||||
errorCorrectionLevel: "M",
|
||||
color: {dark: "#062D56"}
|
||||
});
|
||||
connQRCode.style.width = "360px";
|
||||
connQRCode.style.height = "360px";
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
}
|
||||
|
||||
function contentCopyWithTooltip(parent) {
|
||||
const content = parent.querySelector(".content");
|
||||
const tooltip = parent.querySelector(".tooltiptext");
|
||||
console.log(parent.querySelector(".content_copy") ,111)
|
||||
console.log(parent)
|
||||
const copyButton = parent.querySelector(".content_copy");
|
||||
copyButton.addEventListener("click", copyAddress)
|
||||
copyButton.addEventListener("mouseout", resetTooltip)
|
||||
|
||||
function copyAddress() {
|
||||
navigator.clipboard.writeText(content.innerText || content.value);
|
||||
tooltip.innerHTML = "Copied!";
|
||||
}
|
||||
|
||||
function resetTooltip() {
|
||||
tooltip.innerHTML = "Copy to clipboard";
|
||||
}
|
||||
}
|
||||
|
||||
function copyAddress() {
|
||||
navigator.clipboard.writeText(connURI);
|
||||
tooltipEl.innerHTML = "Copied!";
|
||||
}
|
||||
|
||||
function resetTooltip() {
|
||||
tooltipEl.innerHTML = "Copy to clipboard";
|
||||
}
|
||||
}
|
||||
})();
|
||||
204
css/blog.css
@@ -1,71 +1,164 @@
|
||||
h1 {
|
||||
font-size: 1.8rem;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.6px;
|
||||
#article h1 {
|
||||
font-size: 38px;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.02em;
|
||||
background: -webkit-linear-gradient(to bottom, #53C1FF -50%, #0053D0 160%);
|
||||
background: linear-gradient(to bottom, #53C1FF -50%, #0053D0 160%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-fill-color: transparent;
|
||||
|
||||
margin-bottom: 32px;
|
||||
}
|
||||
|
||||
section.container > div > p:nth-child(2) {
|
||||
@media (min-width:768px) {
|
||||
#article h1 {
|
||||
font-size: 45px;
|
||||
margin-bottom: 50px;
|
||||
}
|
||||
}
|
||||
|
||||
.dark #article h1 {
|
||||
background: -webkit-linear-gradient(to bottom, #70F0F9 100%, #70F0F9 100%);
|
||||
background: linear-gradient(to bottom, #70F0F9 100%, #70F0F9 100%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-fill-color: transparent;
|
||||
}
|
||||
|
||||
section.container>div>p:nth-child(2) {
|
||||
margin: 0;
|
||||
margin-bottom: 2rem;
|
||||
margin-top: 4px;
|
||||
font-size: 1rem;
|
||||
font-size: 12px;
|
||||
font-weight: 400;
|
||||
letter-spacing: 0.03em;
|
||||
color:
|
||||
#3F484B;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.6rem;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.6px;
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 2.2rem;
|
||||
.dark section.container>div>p:nth-child(2) {
|
||||
color: #A8B0B4;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.2rem;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.6px;
|
||||
margin-bottom: 1rem;
|
||||
margin-top: 1.8rem;
|
||||
#article h2 {
|
||||
font-size: 28px;
|
||||
font-weight: 700;
|
||||
color: #3F484B;
|
||||
}
|
||||
|
||||
ul li,
|
||||
ol li {
|
||||
text-decoration: none;
|
||||
/* list-style: none; */
|
||||
font-size: 1.1rem;
|
||||
line-height: 30px;
|
||||
letter-spacing: 0.6px;
|
||||
margin: 0.5rem 0;
|
||||
-webkit-margin-start: 1rem;
|
||||
@media (min-width:768px) {
|
||||
#article h2 {
|
||||
font-size: 38px;
|
||||
}
|
||||
}
|
||||
ul,
|
||||
ol {
|
||||
|
||||
.dark #article h2 {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#article h3 {
|
||||
font-size: 20px;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.02em;
|
||||
color: #606C71;
|
||||
|
||||
margin: 50px 0 25px 0;
|
||||
}
|
||||
|
||||
@media (min-width:768px) {
|
||||
#article h3 {
|
||||
font-size: 28px;
|
||||
}
|
||||
}
|
||||
|
||||
.dark #article h3 {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#article p {
|
||||
font-weight: 400;
|
||||
font-size: 16px;
|
||||
line-height: 24px;
|
||||
color: black;
|
||||
margin: 1.2rem 0;
|
||||
}
|
||||
|
||||
.dark #article p {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#article ul,
|
||||
#article ol {
|
||||
list-style-position: inside;
|
||||
/* list-style-type: decimal; */
|
||||
overflow: auto;
|
||||
margin: 1rem 0;
|
||||
}
|
||||
ul li::marker,
|
||||
ol li::marker {
|
||||
/* content: "-> "; */
|
||||
font-weight: 600;
|
||||
/* color: #fbd561; */
|
||||
|
||||
#article ul li,
|
||||
#article ol li {
|
||||
-webkit-margin-start: 1rem;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.dark #article ul li,
|
||||
.dark #article ol li {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
#article ul li::marker,
|
||||
#article ol li::marker {
|
||||
color: black;
|
||||
}
|
||||
|
||||
.dark #article ul li::marker,
|
||||
.dark #article ol li::marker {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#article ul li a,
|
||||
#article ol li a {
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
#article ul li {
|
||||
list-style: disc;
|
||||
}
|
||||
|
||||
#article ol li {
|
||||
list-style: decimal;
|
||||
}
|
||||
|
||||
#article a {
|
||||
color: #0053D0;
|
||||
text-decoration: underline;
|
||||
text-underline-offset: 4px;
|
||||
}
|
||||
|
||||
.dark #article a {
|
||||
color: #70F0F9;
|
||||
}
|
||||
|
||||
pre {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.dark pre {
|
||||
color: white;
|
||||
}
|
||||
|
||||
/* code{
|
||||
width: 100%;
|
||||
height: auto;
|
||||
} */
|
||||
|
||||
p {
|
||||
margin: 1rem 0;
|
||||
}
|
||||
|
||||
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
h1::before,
|
||||
/* h1::before,
|
||||
h2::before,
|
||||
h3::before {
|
||||
display: block;
|
||||
@@ -74,8 +167,35 @@ h3::before {
|
||||
height: 80px;
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
}
|
||||
} */
|
||||
|
||||
:focus {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
p,
|
||||
a,
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6,
|
||||
li,
|
||||
ul,
|
||||
ol,
|
||||
span,
|
||||
div,
|
||||
blockquote,
|
||||
pre,
|
||||
code {
|
||||
clear: both;
|
||||
}
|
||||
|
||||
#article p img {
|
||||
float: left;
|
||||
}
|
||||
|
||||
#article img {
|
||||
margin-bottom: 1.5rem;
|
||||
}
|
||||
645
css/style.css
@@ -1,17 +1,654 @@
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
@font-face {
|
||||
font-family: Gilroy;
|
||||
src: url("/fonts/GilroyRegular/font.woff2") format("woff2"), url("webFonts/GilroyRegular/font.woff") format("woff");
|
||||
font-weight: 400;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
#comparison::before {
|
||||
@font-face {
|
||||
font-family: Gilroy;
|
||||
src: url("/fonts/GilroyLight/font.woff2") format("woff2"), url("webFonts/GilroyLight/font.woff") format("woff");
|
||||
font-weight: 300;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: Gilroy;
|
||||
src: url("/fonts/GilroyMedium/font.woff2") format("woff2"), url("webFonts/GilroyMedium/font.woff") format("woff");
|
||||
font-weight: 500;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: Gilroy;
|
||||
src: url("/fonts/GilroyBold/font.woff2") format("woff2"), url("webFonts/GilroyBold/font.woff") format("woff");
|
||||
font-weight: 700;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: Gilroy;
|
||||
src: url("/fonts/GilroyRegularItalic/font.woff2") format("woff2"), url("webFonts/GilroyRegularItalic/font.woff") format("woff");
|
||||
font-weight: 400;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
html {
|
||||
scroll-behavior: smooth;
|
||||
font-family: Gilroy, Helvetica, sans-serif;;
|
||||
letter-spacing: 0.003em;
|
||||
}
|
||||
|
||||
/* #comparison::before {
|
||||
display: block;
|
||||
content: " ";
|
||||
margin-top: -80px;
|
||||
height: 120px;
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
}
|
||||
} */
|
||||
|
||||
/* .nav-button-active{
|
||||
background-color: #00C8FB;
|
||||
color: #fff;
|
||||
} */
|
||||
|
||||
/* NEW SITE */
|
||||
.container,
|
||||
.container-fluid,
|
||||
.container-xxl,
|
||||
.container-xl,
|
||||
.container-lg,
|
||||
.container-md,
|
||||
.container-sm {
|
||||
width: 100%;
|
||||
/* padding: 0 20px; */
|
||||
margin-right: auto;
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
@media (min-width: 576px) {
|
||||
|
||||
.container-sm,
|
||||
.container {
|
||||
max-width: 540px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 768px) {
|
||||
|
||||
.container-md,
|
||||
.container-sm,
|
||||
.container {
|
||||
max-width: 720px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
|
||||
.container-lg,
|
||||
.container-md,
|
||||
.container-sm,
|
||||
.container {
|
||||
max-width: 960px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px) {
|
||||
|
||||
.container-xl,
|
||||
.container-lg,
|
||||
.container-md,
|
||||
.container-sm,
|
||||
.container {
|
||||
max-width: 1140px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1400px) {
|
||||
|
||||
.container-xxl,
|
||||
.container-xl,
|
||||
.container-lg,
|
||||
.container-md,
|
||||
.container-sm,
|
||||
.container {
|
||||
max-width: 1320px;
|
||||
}
|
||||
}
|
||||
|
||||
.gradient-text {
|
||||
background: -webkit-linear-gradient(to bottom, #53C1FF -50%, #0053D0 160%);
|
||||
background: linear-gradient(to bottom, #53C1FF -50%, #0053D0 160%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-fill-color: transparent;
|
||||
}
|
||||
|
||||
.dark .border-gradient {
|
||||
background:
|
||||
linear-gradient(#11182F, #11182F) padding-box,
|
||||
linear-gradient(to bottom, transparent, #01F1FF 58%) border-box;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
.dark .only-light {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.only-dark {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.dark .only-dark {
|
||||
display: inherit;
|
||||
}
|
||||
|
||||
.dark .unique-swiper .border-gradient{
|
||||
background:
|
||||
linear-gradient(#0C0B13, #0C0B13) padding-box,
|
||||
linear-gradient(to bottom, transparent, #01F1FF 58%) border-box;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
/* Nav and Menu */
|
||||
#why-simplex::before,
|
||||
#features::before,
|
||||
#simplex-privacy::before,
|
||||
#simplex-network::before {
|
||||
display: block;
|
||||
content: " ";
|
||||
margin-top: -26px;
|
||||
height: 66px;
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.menu-link{
|
||||
font-size: 16px;
|
||||
line-height: 33.42px;
|
||||
color: #0D0E12;
|
||||
}
|
||||
.dark .menu-link{
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
@media (min-width:1024px) {
|
||||
.nav-link-text,
|
||||
.menu-link {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
color: #0D0E12;
|
||||
}
|
||||
|
||||
.nav-link-text::before,
|
||||
.active .nav-link-text::before,
|
||||
.menu-link::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 0;
|
||||
height: 1px;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
/* background-color: initial; */
|
||||
transition: width 0.25s ease-out;
|
||||
}
|
||||
|
||||
.menu-link::before {
|
||||
background-color: #0D0E12;
|
||||
}
|
||||
.dark .menu-link::before {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.active .nav-link-text::before {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.nav-link:hover .nav-link-text::before,
|
||||
.menu-link:hover::before {
|
||||
width: 100%;
|
||||
left: 0;
|
||||
right: auto;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.sub-menu {
|
||||
visibility: hidden;
|
||||
opacity: 0;
|
||||
color: #505158;
|
||||
}
|
||||
|
||||
.dark .sub-menu {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.dark .sub-menu li:hover {
|
||||
color: #66D9E2;
|
||||
}
|
||||
|
||||
.sub-menu li:hover {
|
||||
color: #0053D0;
|
||||
}
|
||||
|
||||
.sub-menu {
|
||||
transition: all .3s ease !important;
|
||||
}
|
||||
|
||||
.nav-link span svg,
|
||||
header nav {
|
||||
transition: all 0.5s ease;
|
||||
}
|
||||
|
||||
.nav-link:hover span svg {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
/* @media (max-width: 1400px) {
|
||||
.landing-page-header-article-paragraph {
|
||||
width: 21rem;
|
||||
}
|
||||
|
||||
.socials {
|
||||
flex-wrap: nowrap;
|
||||
}
|
||||
} */
|
||||
|
||||
@media (min-width:1024px) {
|
||||
|
||||
.nav-link:hover .sub-menu,
|
||||
.nav-link:focus-within .sub-menu {
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
.sub-menu {
|
||||
max-height: 0;
|
||||
transform: translateY(-10px);
|
||||
transition: all .7s ease !important;
|
||||
}
|
||||
|
||||
.active .sub-menu {
|
||||
max-height: 200px;
|
||||
transform: translateY(0px);
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
header nav {
|
||||
visibility: hidden;
|
||||
opacity: 0;
|
||||
transform: translateX(100%);
|
||||
}
|
||||
|
||||
header nav.open {
|
||||
visibility: visible;
|
||||
opacity: 1;
|
||||
transform: translateX(0);
|
||||
}
|
||||
}
|
||||
|
||||
.lock-scroll {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* Swipe Sections */
|
||||
.hash-number {
|
||||
background: linear-gradient(251.16deg, #53C1FF 1.1%, #0053D0 100.82%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
}
|
||||
|
||||
.swiper-button-disabled{
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.swiper-pagination-bullet {
|
||||
height: 14.31px;
|
||||
width: 14.31px;
|
||||
margin: 0 5px !important;
|
||||
}
|
||||
.dark .swiper-pagination-bullet{
|
||||
background: #D4D4D433;
|
||||
opacity: .8;
|
||||
}
|
||||
|
||||
.swiper-pagination-bullet-active{
|
||||
opacity: 1 !important;
|
||||
}
|
||||
.swiper-pagination-bullet-active {
|
||||
background-color: #0197FF !important;
|
||||
}
|
||||
.dark .swiper-pagination-bullet-active{
|
||||
background-color: #70F0F9 !important;
|
||||
}
|
||||
|
||||
.swiper-button-next,
|
||||
.swiper-button-prev {
|
||||
height: 40px;
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
.swiper-button-disabled {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.unique-swiper .swiper-slide,
|
||||
.unique-swiper .swiper-wrapper{
|
||||
height: inherit;
|
||||
}
|
||||
|
||||
.swiper-scrollbar-horizontal {
|
||||
margin-top: 40px !important;
|
||||
width: 302.06px !important;
|
||||
height: 7.73px !important;
|
||||
left: 50% !important;
|
||||
transform: translateX(-50%) !important;
|
||||
transform: translateX(-50%) !important;
|
||||
}
|
||||
|
||||
.swiper-scrollbar-drag {
|
||||
width: 112px !important;
|
||||
height: 8px !important;
|
||||
background-color: #0197FF;
|
||||
}
|
||||
.dark .swiper-scrollbar-drag{
|
||||
background-color: #70F0F9;
|
||||
}
|
||||
|
||||
/* What makes simplex private */
|
||||
.card{
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.card,
|
||||
.card > div:nth-child(2),
|
||||
.card > div:nth-child(1) {
|
||||
transition: all .5s ease;
|
||||
}
|
||||
|
||||
.card > div:nth-child(2) > *:nth-child(2),
|
||||
.card > div:nth-child(2) > *:nth-child(3) {
|
||||
opacity: 0;
|
||||
max-height: 0;
|
||||
transform: translateY(20px);
|
||||
transition: all .5s ease-out;
|
||||
}
|
||||
.card > div:nth-child(2) > *:nth-child(3) {
|
||||
transform: translateY(40px);
|
||||
}
|
||||
|
||||
.card:hover > div:nth-child(1) {
|
||||
height: 200px;
|
||||
padding: 12px 10px;
|
||||
}
|
||||
.card:hover > div:nth-child(2) {
|
||||
height: 270px;
|
||||
padding: 8px 24px;
|
||||
}
|
||||
.card.card-active > div:nth-child(2) {
|
||||
height: 470px;
|
||||
}
|
||||
|
||||
.card:hover > div:nth-child(2) > *:nth-child(2),
|
||||
.card:hover > div:nth-child(2) > *:nth-child(3),
|
||||
.card.card-active > div:nth-child(2) > *:nth-child(2),
|
||||
.card.card-active > div:nth-child(2) > *:nth-child(3) {
|
||||
opacity: 1;
|
||||
max-height: 470px;
|
||||
transform: translateY(0px);
|
||||
}
|
||||
|
||||
.card:not(.no-hover):hover > div:nth-child(2) > *:nth-child(3){
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
|
||||
/* SimpleX Unique */
|
||||
.simplex-unique-card .card-content{
|
||||
transition: all .5s ease-out;
|
||||
}
|
||||
@media (max-width: 768px) {
|
||||
.simplex-unique-card .card-content .content-body{
|
||||
height: 0;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
transform: translateY(80px);
|
||||
transition: all .7s ease;
|
||||
}
|
||||
.simplex-unique-card.active-card .card-content .content-body{
|
||||
max-height: 540px;
|
||||
opacity: 1;
|
||||
visibility: visible;
|
||||
transform: translateY(0px);
|
||||
}
|
||||
.simplex-unique-card.active-card .card-content{
|
||||
height: 540px;
|
||||
}
|
||||
.open-card-btn svg,
|
||||
.close-card-btn svg{
|
||||
transition: all .5s ease;
|
||||
}
|
||||
.open-card-btn:hover svg,
|
||||
.close-card-btn:hover svg{
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* comparison */
|
||||
#comparison table td,
|
||||
#comparison table th {
|
||||
font-size: 15px;
|
||||
font-weight: normal;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
line-height: 1.4;
|
||||
letter-spacing: 0.47px;
|
||||
}
|
||||
|
||||
|
||||
/* hero */
|
||||
header{
|
||||
transition: all .7s ease;
|
||||
}
|
||||
.primary-header {
|
||||
background: linear-gradient(270deg, #0053D0 35.85%, #0197FF 94.78%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-shadow: 0px 4px 74px #e9e7e2;
|
||||
}
|
||||
.dark .primary-header{
|
||||
background: linear-gradient(270deg,#70F0F9 100%, #70F0F9 100%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-shadow: none;
|
||||
}
|
||||
.secondary-header {
|
||||
color: #606c71;
|
||||
text-shadow: 0px 4px 74px #e9e7e2;
|
||||
}
|
||||
.dark .secondary-header{
|
||||
color: #fff;
|
||||
text-shadow: none;
|
||||
}
|
||||
.hero-phone-background {
|
||||
background-image: url("/img/new/bg_gfx.png");
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
background-size: contain;
|
||||
/* width: 644px;
|
||||
height: 644px;
|
||||
margin-bottom: 5rem; */
|
||||
|
||||
|
||||
/* position: fixed; */
|
||||
|
||||
/* justify-content: center;
|
||||
align-items: center;
|
||||
align-content: center;
|
||||
justify-items: center;
|
||||
*/
|
||||
}
|
||||
#hero-phone-light, #hero-phone-dark {
|
||||
position: relative;
|
||||
animation-name: none;
|
||||
animation-duration: 2s;
|
||||
animation-fill-mode: forwards;
|
||||
}
|
||||
|
||||
#hero-phone-video {
|
||||
/* position: absolute;
|
||||
border-radius: 10px;
|
||||
background-color: black;
|
||||
animation-name: none; */
|
||||
/* border-top-right-radius: 25px; */
|
||||
/* border-top-left-radius: 32px; */
|
||||
animation-duration: 2s;
|
||||
animation-fill-mode: forwards;
|
||||
/* height: 580px;
|
||||
width: 256px; */
|
||||
/* margin-left: 0.3rem;
|
||||
margin-bottom: 0.1rem; */
|
||||
}
|
||||
|
||||
.description {
|
||||
width: 31rem;
|
||||
}
|
||||
|
||||
@media (max-width: 1400px) {
|
||||
/* #hero-phone-video {
|
||||
border-radius: 15px;
|
||||
height: 500px;
|
||||
width: 227px;
|
||||
margin-bottom: 4.7rem;
|
||||
} */
|
||||
}
|
||||
|
||||
@keyframes small {
|
||||
0% {
|
||||
transform: scale(1);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: scale(0.66);
|
||||
}
|
||||
}
|
||||
@keyframes big {
|
||||
0% {
|
||||
transform: scale(0.66);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
@keyframes bigvideo {
|
||||
0% {
|
||||
transform: scale(0.66);
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: scale(1);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
.tablet-hero-phone-background {
|
||||
background-image: url("../Images/bg_gfx.png");
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
background-size: contain;
|
||||
position: absolute;
|
||||
width: 40%;
|
||||
top: 5%;
|
||||
left: 30%;
|
||||
}
|
||||
.tablet-hero-phone {
|
||||
transform: skewY(25deg);
|
||||
}
|
||||
|
||||
/* Overlays */
|
||||
.overlay a,
|
||||
p a{
|
||||
color: #0053D0;
|
||||
text-decoration: underline;
|
||||
text-underline-offset: 2px;
|
||||
}
|
||||
.dark .overlay a,
|
||||
.dark p a{
|
||||
color: #70F0F9;
|
||||
}
|
||||
|
||||
/* For Contact & Invitation Page */
|
||||
.primary-header-contact {
|
||||
background: linear-gradient(251.16deg, #53c1ff 1.1%, #0053d0 100.82%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-shadow: 0px 4px 74px #e9e7e2;
|
||||
}
|
||||
.dark .primary-header-contact{
|
||||
background: linear-gradient(270deg,#70F0F9 100%, #70F0F9 100%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
background-clip: text;
|
||||
text-shadow: none;
|
||||
}
|
||||
.secondary-header-contact {
|
||||
text-shadow: 0px 4px 74px #e9e7e2;
|
||||
}
|
||||
.dark .secondary-header-contact {
|
||||
text-shadow: none;
|
||||
}
|
||||
.content_copy_with_tooltip {
|
||||
background-color: #f8f8f6;
|
||||
border-radius: 50px;
|
||||
padding-bottom: 4px;
|
||||
padding-top: 8px;
|
||||
margin-top: 16px;
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
.content_copy_with_tooltip .tooltip {
|
||||
vertical-align: -6px;
|
||||
}
|
||||
.content_copy_with_tooltip .content {
|
||||
font-size: 15px;
|
||||
}
|
||||
.contact-tab > .contact-tab-content{
|
||||
opacity: 0;
|
||||
max-height: 0;
|
||||
transition: all 0.5s ease;
|
||||
visibility: hidden;
|
||||
transform: translateY(10px);
|
||||
overflow: hidden;
|
||||
}
|
||||
.contact-tab svg{
|
||||
transform: rotate(-180deg);
|
||||
transition: all .5s ease;
|
||||
}
|
||||
.contact-tab.active > .contact-tab-content{
|
||||
opacity: 1;
|
||||
max-height: 300px;
|
||||
visibility: visible;
|
||||
transform: translateY(0px);
|
||||
}
|
||||
.for-tablet .contact-tab.active > .contact-tab-content{
|
||||
min-height: 450px;
|
||||
}
|
||||
.contact-tab.active svg,
|
||||
.contact-tab:hover svg{
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
13
css/swiper-bundle.min.css
vendored
Normal file
2519
css/tailwind.css
BIN
fonts/GilroyBold/font.woff
Normal file
BIN
fonts/GilroyBold/font.woff2
Normal file
BIN
fonts/GilroyLight/font.woff
Normal file
BIN
fonts/GilroyLight/font.woff2
Normal file
BIN
fonts/GilroyMedium/font.woff
Normal file
BIN
fonts/GilroyMedium/font.woff2
Normal file
BIN
fonts/GilroyRegular/font.woff
Normal file
BIN
fonts/GilroyRegular/font.woff2
Normal file
BIN
fonts/GilroyRegularItalic/font.woff
Normal file
BIN
fonts/GilroyRegularItalic/font.woff2
Normal file
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 45 KiB |
|
Before Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 58 KiB |
|
Before Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 123 KiB |
|
Before Width: | Height: | Size: 183 KiB |
|
Before Width: | Height: | Size: 199 KiB |
|
Before Width: | Height: | Size: 202 KiB |
|
Before Width: | Height: | Size: 170 KiB |
|
Before Width: | Height: | Size: 104 KiB |
|
Before Width: | Height: | Size: 119 KiB |
|
Before Width: | Height: | Size: 156 KiB |
|
Before Width: | Height: | Size: 199 KiB |
|
Before Width: | Height: | Size: 240 KiB |
|
Before Width: | Height: | Size: 295 KiB |
|
Before Width: | Height: | Size: 304 KiB |
|
Before Width: | Height: | Size: 303 KiB |
@@ -1,15 +0,0 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<title>Page Title</title>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<!-- <link rel="stylesheet" type="text/css" media="screen" href="./index.css"> -->
|
||||
<script src="./index.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<img id="hero-phone" />
|
||||
<div id="hero-phone-preload" style="display: none;"></div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,69 +0,0 @@
|
||||
(function () {
|
||||
|
||||
const fastImages = mkSequence("./fastImages/Darkphone1_", 0, 20, ".png")
|
||||
const slowImages = mkSequence("./slowImages/Darkphone1_", 8, 38, ".png")
|
||||
|
||||
|
||||
let complete = false
|
||||
run()
|
||||
window.onload = run
|
||||
|
||||
function mkSequence(prefix, from, to, ext) {
|
||||
const seq = []
|
||||
for (let n = from; n <= to; n++) {
|
||||
let suffix = '' + n
|
||||
suffix = '0'.repeat(4 - suffix.length) + suffix
|
||||
seq.push(prefix + suffix + ext)
|
||||
}
|
||||
return seq
|
||||
}
|
||||
|
||||
async function run() {
|
||||
const imageEl = document.getElementById("hero-phone");
|
||||
const preloadEl = document.getElementById("hero-phone-preload");
|
||||
if (complete || !imageEl || !preloadEl) return
|
||||
complete = true
|
||||
await preload(fastImages.concat(slowImages))
|
||||
await animate(fastImages, 100)
|
||||
await animate(slowImages, 500)
|
||||
|
||||
async function preload(images) {
|
||||
let imgEls = []
|
||||
let resolved = false
|
||||
return new Promise((resolve) => {
|
||||
setTimeout(() => {
|
||||
if (!resolved) {
|
||||
resolved = true
|
||||
resolve()
|
||||
}
|
||||
}, 2000)
|
||||
for (const img of images) {
|
||||
const el = document.createElement("img");
|
||||
el.src = img
|
||||
imgEls.push(el)
|
||||
preloadEl.appendChild(el)
|
||||
const loaded = () => {
|
||||
imgEls = imgEls.filter((e) => e !== el)
|
||||
if (imgEls.length === 0 && !resolved) {
|
||||
resolved = true
|
||||
resolve()
|
||||
}
|
||||
}
|
||||
el.addEventListener('load', loaded)
|
||||
el.addEventListener('error', loaded)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
async function animate(images, ms) {
|
||||
for (const img of images) {
|
||||
imageEl.src = img
|
||||
await delay(ms)
|
||||
}
|
||||
}
|
||||
|
||||
async function delay(ms) {
|
||||
return new Promise((resolve) => setTimeout(resolve, ms))
|
||||
}
|
||||
}
|
||||
})();
|
||||
|
Before Width: | Height: | Size: 323 KiB |
|
Before Width: | Height: | Size: 323 KiB |
|
Before Width: | Height: | Size: 319 KiB |
|
Before Width: | Height: | Size: 330 KiB |
|
Before Width: | Height: | Size: 330 KiB |
|
Before Width: | Height: | Size: 326 KiB |
|
Before Width: | Height: | Size: 343 KiB |
|
Before Width: | Height: | Size: 341 KiB |
|
Before Width: | Height: | Size: 362 KiB |
|
Before Width: | Height: | Size: 365 KiB |
|
Before Width: | Height: | Size: 364 KiB |
|
Before Width: | Height: | Size: 363 KiB |
|
Before Width: | Height: | Size: 374 KiB |
|
Before Width: | Height: | Size: 375 KiB |
|
Before Width: | Height: | Size: 377 KiB |
|
Before Width: | Height: | Size: 376 KiB |
|
Before Width: | Height: | Size: 461 KiB |
|
Before Width: | Height: | Size: 460 KiB |
|
Before Width: | Height: | Size: 456 KiB |
|
Before Width: | Height: | Size: 461 KiB |
|
Before Width: | Height: | Size: 456 KiB |
|
Before Width: | Height: | Size: 457 KiB |
|
Before Width: | Height: | Size: 473 KiB |
|
Before Width: | Height: | Size: 469 KiB |
|
Before Width: | Height: | Size: 422 KiB |
|
Before Width: | Height: | Size: 419 KiB |
|
Before Width: | Height: | Size: 416 KiB |
|
Before Width: | Height: | Size: 420 KiB |
|
Before Width: | Height: | Size: 419 KiB |
|
Before Width: | Height: | Size: 415 KiB |
|
Before Width: | Height: | Size: 431 KiB |
|
Before Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 60 KiB |
|
Before Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 123 KiB |