techhub.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A hub primarily for passionate technologists, but everyone is welcome

Administered by:

Server stats:

5.4K
active users

#chatapp

1 post1 participant0 posts today
Continued thread

FOSS NEWS

Kiwi Browser shuts down, its extension code will be available for Microsoft Edge:
alternativeto.net/news/2025/1/
(Yeah just use a proprietary crap instead of a FOSS browser, exactly...)

Signal going to receive option to transfer encrypted chat history to new linked devices (desktop or iPad):
alternativeto.net/news/2025/1/

Bitwarden implements sending verification code via email when logging in from a new device for account in which 2FA isn't enabled:
alternativeto.net/news/2025/1/

Thunderbird 134 released with new notification system for real-time desktop alerts, various bug fixes:
9to5linux.com/mozilla-thunderb

Varia download manager receives yt-dlp support, improved BitTorrent support:
omgubuntu.co.uk/2025/01/varia-
(Yeah one more way to "pirate" YouTube videos! Take that, YouTube!)

(Linux news in original post)

Async Bottom-Up Javascript State Management

positive-intentions.com/blog/a

This investigation comes from my work on a #P2P #ChatApp. I found it tricky in a #FunctionalProgramming approach to handle #Async #Messages from peers needing the latest #State values. The challenge? How #JavaScript scopes variables in #Callbacks.

I wanted to explore a solution out of curiosity to see if it could work. I'm not trying to push "yet another #StateManagement library." This is about my #LearningProcess for use in #PersonalProjects.

positive-intentions.com · Dim: Async State Management | positive-intentionsI'm working on creating something I can call "functional web components".

id like to share some details about how my app works so you can discover/give me feedback on my app. id like to have wording in my app to say something like "most secure chat app in the world"... i probably cant do that because it doesnt qualify.

github.com/positive-intentions

positive-intentions.com/blog/i

im not an expert on #cyberSecurity. im sure there are many gaps in my knowlege in this domain.

using #javascript, i initially created a fairly basic #chatApp using using #peerjs to create #encrypted #webrtc #connections. this was then easily enhanced by exchanging additional #encryption #keys from #cryptography functions built into browsers (#webcrypto api) to add a redundent layer of encryption. a #diffieHelman key #exchange is done over #webrtc (which can be considered #secure when exchanged over public channels) to create #serverless #p2p #authentication.

- i sometimes recieve feedback like "javascript is inherently insecure". i disagree with this and have #openedSource my #cryptography module. its basically a thin wrapper around vanilla cryptography functions of a #browser (webcrypto api).

- another concern for my kind of app (#PWA) is that the developer may introduce malicious code. this is an important point for which i open sourced the project and give instructions for #selfhosting. selhosting this app has some unique features. unlike many other #selfhosted #projects, this app can be hosted on #githubPages (instructions are provided in the readme). im also working towards having better support for running the index.html directly without a static server.

- to prevent things like browser extensions, the app uses strict #CSP headers to prevent #unauthorised code from running. #selfhosting users should take note of this when setting up their own instance.

- i received feedback the #Signal/#Simplex protocol is great. completely undertsandable and agree, but wonder if im reducing the #complexity by working with #webrtc. while it has its many flaws, i think risks can be reasonable mitigated if the #cryptography functions are implemented correctly. (all data out is #encrypted and all data in is #decrypted on-the-fly)

- the key detail that makes this approach unique, is because as a #webapp, unlike other solutions, users have a choice of using any #device/#os/#browser. while a webapp can have nuanced #vulnerabilities, i think by #openSourcing and providing instructions for #selfhosting and instructions to #build for various #platforms, it can provide a reasonable level of #security.

i think if i stick to the principle of avoiding using any kind of "required" service provider (myself included) and allowing the #frontend and the peerjs-server to be #hosted #independently, im on track for creating a #chatSystem with the "fewest moving parts". i hope you will agree this is true #p2p and i hope i can use this as a step towards true #privacy and #security. #security might be further improved by using a trusted #VPN.

while there are several similar apps out there like mine. i think mine is distinctly a different approach. so its hard to find #bestPractices for the functionalities i want to achieve. in particular #security practices to use when using #p2p technology.

(note: this app is an #unstable, #experiment, #proofOfConcept and not ready to replace any other app or service. It's far from finished and provided for #testing and #demo purposes only. This post is to get #feedback on the progress to determine if i'm going in the right direction for a secure chat app)

Decentralized chat. Contribute to positive-intentions/chat development by creating an account on GitHub.
GitHubGitHub - positive-intentions/chat: Decentralized chatDecentralized chat. Contribute to positive-intentions/chat development by creating an account on GitHub.
Continued thread

(Linux news in original post)

FOSS NEWS

Proton VPN browser extension becomes available in Free Plan, with minor limitations:
omgubuntu.co.uk/2024/08/proton
(In Firefox based browsers, you need to modify a browser setting to make sure the extension doesn't leak DNS: protonvpn.com/support/browser- )
(Edit: In LibreWolf, you also need to turn off the "Query OCSP responder servers to confirm the current validity of certificates" setting)

Proton introduces new Duo plan which can be used by up to 2 people, comes with 1TB cloud storage (plus 15GB bonus each year):
proton.me/blog/proton-duo

Signal gets blocked in Russia and Venezuela:
alternativeto.net/news/2024/8/

Thunderbird 130 Beta released with system tray on Linux:
omgubuntu.co.uk/2024/08/thunde
(GNOME devs be like: "But that's a legacy technology!")

OMG! Ubuntu · Proton VPN Browser Extensions Now Available for Free Plan Users - OMG! UbuntuProton, the company behind a suite of privacy-focused services, has made the Proton VPN Chrome and Firefox extensions available to those with a Proton

What is your experience with Matrix? I joined a few projects rooms awhile ago and it's wildly different. Some are quiet and normal while others often, every couple of days, get spammed with things ranging from annoyances to csam.

I've left those rooms but is this a Matrix issue or a project issue? I'm wondering if it's even worth trying to use Matrix.

Continued thread

I like the simplicity of this model, where nginx handles https termination (and can serve static content), oauth2-proxy handles the auth/login wrangling and could be replaced by a different agent if need be, and the main connectivity is long-lived websocket connections forwarded through to the chatapp server itself.

For the small audiences I'm thinking keeping all the active chat state in memory is probably entirely doable, logging to disk for recovery on restart.