title: Refocusing Simpatico date: 2025-08-25
description: Thoughts on Simpatico's direction - secure browser connections and literate markdown
Refocusing Simpatico
Checkout the red-herring branch (although you can no longer check out the now deleted website repository) to see a tentative server/site split. It's not a bad idea, and one worth pursuing, but it's also irrelevant to the primary (and secondary) focus of Simpatico. The primary focus is to make it easy for people to connect browsers together securely and privately. The http server's whole job is to bootstrap the simpatico shell, the DOM and websocket required to communicate between them. A secondary focus is the use of literate markdown for a fast and enjoyable BTD loop. Both of these goals need more attention, and making simpatico more like nginx, caddy or httpd is actually a distraction.
What's next
- Revise the installation instructions to avoid npm and instead clone (or fork) and modify the simpatico repo.
- I have some good candidates for the secure/private websocket functionality that is the whole purpose of Simpatico - I need to install and test that it's running.
- Although secondary, I like literate markdown although it doesn't really conform to the definition, since there is no automatic link between a markdown file that describes a library and the library itself. So far I've been maintaining the library seperately, by hand. This leads to update anomolies and questions about "source of truth" for a given library (the js file is the source of truth, btw). I'd also like to support the shorthand "[[]]" for internal links, and also transforming markup serverside with highlight.js to avoid the ~200kb library from shipping to the client, even once.
- The blog functionality is undercooked. My original goal was to have a script that could be run in any subdirectory of the project; certain internal limitations with pnpm make this impossible. So instead hard-code the
/blogpath and have it work like that. But I really need to go over the whole system and either make it work well or remove it. - One of the casualties of this wild goose chase is that some of the most visually interesting, interactive content around combine and stree stopped working. This should be easier to focus on once the runtime reverts to simplicity.
© 2026 simpatico