An experimental IndieWeb site built in Go.

update README with postmortem

+26 -5
+26 -5
README.md
··· 5 5 Space is an attempt at building an IndieWeb-capable personal site, before I 6 6 started looking into AT Protocol. It uses [Chi](https://go-chi.io/#/), 7 7 [Templ](https://templ.guide/), and [TailwindCSS](https://tailwindcss.com). 8 + Data is stored using SQLite, and your DB is continuously backed up to S3 via 9 + [Litestream](https://litestream.io/). 8 10 9 - Media files are stored in an S3 backend of your choice, and any unrecognized 10 - or unsupported [post types](https://indieweb.org/posts) are be rendered as raw 11 - JSON until support was added. 11 + Any unrecognized or unsupported [post types](https://indieweb.org/posts) are 12 + rendered as raw JSON until they are explicitly supported. Media files are 13 + stored in the same S3 backend that Litestream uses, so all your data is 14 + replicated off-machine. 12 15 13 16 Notably, the Tailwind pipeline is not checked into the project, as this was 14 17 built before Go Tool support. 15 18 16 19 If you want to take it for a test-drive, you can check the `.env.example` file 17 - for all required configuration values. At the time, I was quite pleased with 18 - how this turned out. 20 + for all required configuration values. 19 21 20 22 ## Supported Specs 21 23 ··· 24 26 - [ ] [h-card](https://microformats.org/wiki/h-card) 25 27 - [ ] [Webmentions](https://www.w3.org/TR/webmention/) 26 28 - [ ] [Microsub](https://indieweb.org/Microsub-spec) 29 + 30 + ## What happened? 31 + 32 + At the time, I was quite pleased with how this turned out. I think I nailed the 33 + aesthetics, and I hit my requirement for data durability and replication. I was 34 + targeting Fly.io for deployment, and Fly+Tigris was an excellent combo. 35 + 36 + Day-to-day, though, I couldn't make a habit of using this. IndieWeb is a lonely 37 + place when you don't have any connections and you're not a social creature by 38 + default. Implementing support for different post types over time felt like it 39 + was going to be a drag, and my heart just wasn't in it. 40 + 41 + I have my hopes up with AT Protocol, however. AppViews remove the need for 42 + implementing display logic for each "post type" manually, and Lexicons allow 43 + for myriad post types contributed by different services. It's an easier place 44 + to live for a lurker such as myself. 45 + 46 + Maybe at some point, I'll take a stab at implementing my own PDS, but until 47 + then--here's the thing I already built.