This was an experiment in UX for markdown editing, with use cases such as chat programs and issue boards in mind (slack, jira).
It uses html's contenteditable under the hood, which is jank as all getout, but it works better than I thought it would when I started! I was able to bound a lot of uncertainty regarding the contenteditable behavior. There is still some stuff that I wasn't entirely successful working around yet (ex: cursor movement).
I added a 200ms debounce delay after changes to avoid adding latency to normal typing and hopefully save some cpu cycles (on mobile devices?) but that could be adjusted.
It uses html's contenteditable under the hood, which is jank as all getout, but it works better than I thought it would when I started! I was able to bound a lot of uncertainty regarding the contenteditable behavior. There is still some stuff that I wasn't entirely successful working around yet (ex: cursor movement).
I added a 200ms debounce delay after changes to avoid adding latency to normal typing and hopefully save some cpu cycles (on mobile devices?) but that could be adjusted.