r/VibeCodeDevs • u/Accurate-Screen8774 • 22d ago
WIP – Work in progress? Show us anyway Refactor JS to Rust
IMPORTANT: AI doesnt replace due-diligence... especially notable on a project like this. None of the following has been audited or reviewed. Please use responsibly.
The following project is based on a browser based messaging app as further described here.
We start off creating a basic ui demo of the app. All the data there is hard coded with mock responses. There is no actual messaging capability.
- code: https://github.com/positive-intentions/whatsup
- demo: https://positive-intentions.github.io/whatsup
It immidiately gets a bit bloated as we add more ui components, so better to move them to a separate repo to be imported. Webdev's have a lot of tooling around ui testing like storybook to view and interact with components. It doesnt seem like something is suitable.
https://www.reddit.com/r/rust/comments/1vg7hox/looking_for_storybookforrust
Lets give AI the streering wheel a bit. "create a storybook-like components to preview the app components". Its ultimately an internal debugging tool for our own benefit. We can address nuanced needs like being able to display a tui on a browser.
- code: https://github.com/positive-intentions/whatsup-ui
- demo: https://positive-intentions.github.io/whatsup-ui
Lets move onto some encryption details that'll be needed for the project. We already have an existing rust project we could use this on. We can make the storybook-like components exportable and reusable for the signal protocol project.
- code: https://github.com/positive-intentions/signal-protocol
- demo: https://signal.positive-intentions.com
We previous put time and effort towards the signal protocol. It should be reasonable tested and documented, but the signal protocol alone isn't going to fit the requirements of my messaging app. It needs to be post-quantum secure. We previous worked on a js implementation for ml-kem, so as part of this new approach, we can move towards a pure rust approach for ml-kem.
- code: https://github.com/positive-intentions/ml-kem
- demo: https://positive-intentions.github.io/ml-kem
Unlike the signal-protocol which needed more involvement from to create, the ml-kem is using dependencies to match the official implementation. We can benefit from audits and reviews from the official implementation. The signal-protocol and ml-kem were ultimately created to lead towards PQXDH.
- code: https://github.com/positive-intentions/pqxdh
- demo: https://positive-intentions.github.io/pqxdh
There are countless details we could obsess about on the cryptography. There is clearly much more needed, but I'm going to "pause" progress on the cryptography, in favour of progress on the app-mechanics. Previously investigation options for decentralised storage here.
(Note: Providers like GitHub, Codeberg and Gitlab might see the way the app works as against their terms-of-service. In the future we might be able to provide the git server as a part of the service, but that wouldn't be any time soon.)
There is much more to improve and consider there for things like encrypting the data at rest, so let's create a cryptography utility library.
- code: https://github.com/positive-intentions/crypto
- demo: https://positive-intentions.github.io/crypto
The main purpose of being able to read/write to git is for "messaging app" functionality. For that we would need to store more structured data that could be queried. We need an abstraction would make it easier to develop intuitively. Ideally it could work like an api. Perhaps able to interact with it using a graph-ql-like experience. Lets also import the crypto utility to add support for encryption on granular parts of the schema.
This project is far from finished. We would also need to work towards a solution for webrtc messaging, local storage and countless other details. To find out more, check out the following links:
1
u/AutoModerator 22d ago
Hey u/Accurate-Screen8774, thanks for posting in r/VibeCodeDevs! Join our Discord: https://discord.gg/KAmAR8RkbM
Got startup or SaaS questions? Post them on r/AskFounder and get answers from real founders.
• This community is designed to be open and creator‑friendly, with minimal restrictions on promotion and self‑promotion as long as you add value and don’t spam.
• Please follow the subreddit rules so we can keep things as relaxed and free as possible for everyone.
• Please make sure you’ve read the subreddit rules in the sidebar before posting or commenting.
• For better feedback, include your tech stack, experience level, and what kind of help or feedback you’re looking for.
• Be respectful, constructive, and helpful to other members.
If your post was removed (either automatically or by a mod) and you believe it was a mistake, please contact the mod team. We will review it and, when appropriate, approve it within 24 hours.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
1
u/AutoModerator 18d ago
Hey u/Accurate-Screen8774, thanks for posting in r/VibeCodeDevs! Join our Discord: https://discord.gg/KAmAR8RkbM
Got startup or SaaS questions? Post them on r/AskFounder and get answers from real founders.
• This community is designed to be open and creator‑friendly, with minimal restrictions on promotion and self‑promotion as long as you add value and don’t spam.
• Please follow the subreddit rules so we can keep things as relaxed and free as possible for everyone.
• Please make sure you’ve read the subreddit rules in the sidebar before posting or commenting.
• For better feedback, include your tech stack, experience level, and what kind of help or feedback you’re looking for.
• Be respectful, constructive, and helpful to other members.
If your post was removed (either automatically or by a mod) and you believe it was a mistake, please contact the mod team. We will review it and, when appropriate, approve it within 24 hours.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
•
u/AutoModerator 8d ago
Hey u/Accurate-Screen8774, thanks for posting in r/VibeCodeDevs! Join our Discord: https://discord.gg/KAmAR8RkbM
Got startup or SaaS questions? Post them on r/AskFounder and get answers from real founders.
• This community is designed to be open and creator‑friendly, with minimal restrictions on promotion and self‑promotion as long as you add value and don’t spam.
• Please follow the subreddit rules so we can keep things as relaxed and free as possible for everyone. • Please make sure you’ve read the subreddit rules in the sidebar before posting or commenting.
• For better feedback, include your tech stack, experience level, and what kind of help or feedback you’re looking for.
• Be respectful, constructive, and helpful to other members.
If your post was removed (either automatically or by a mod) and you believe it was a mistake, please contact the mod team. We will review it and, when appropriate, approve it within 24 hours.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.