Note
This project started off as a learning experience (succeeded on that part) and it has been archived for now as I don't have the motivation anymore to maintain and implement new features to it. I decided to forward my abitions towards an another similiar community based website. If you don't see any blogs then it is a sign that the database is not active anymore.
Postpaper is a posting platform prototype where people can edit their posts in a vim editor along with a real-time Rust powered markdown preview.
Showcase videos are located in the /showcase
directory.
The markdown parsing is established by a fork of a Rust project called markdown-rs that is compiled down to WebAssembly and then ran in a web worker environment and for seamless coconut oil experience.
Here is a simple visualization of the data flow:
raw markdown string string > mdast > hast hast is also received by the editor, the scroll between the editor and md preview is syncronised by the hast offset
Editor >> web worker with markdown-rs WebAssembly >> Prose preview renders real-time HTML >> Editor loopback
The goal for the real-time parsing was ~65000 characters of diverse markdown parsed below an unnoticeable delay of 40ms on my old rusty laptop. pun intended
Succeeded on that part as well :D
See /build-project.sh
Except where explicitly stated (in individual files) otherwise, all contributions in this repository are licensed under:
Placeholder blogs were generated by ChatGPT.