@david Also if you wouldn't mind writing up an Issue for the image/upload problem too, that would be great π I still haven't solved it properly, but I'll try to do so today. There's also an issue uploading images via the yarnd API path from the Twtxt App too, which I can replicate with basically any photo from my iPhone's Photo gallery hmm π€
Problems are Solved by Method\" π¦πΊπ¨βπ»π¨βπ¦―πΉβ πβ― π¨βπ©βπ§βπ§π₯ -- James Mills (operator of twtxt.net / creator of Yarn.social π§Ά)
Also a "Publish who I follow" toggle: writes # follow = + # following = N into your feed like yarnd does. Off by default (it is your social graph π€), and only on the GitHub/Gitea backends for now where the app owns the feed file. twtd next π€
Okay I'm fixing this in lextwt, yarnd and twtxt.app (takes a different path). Soon you'll be able to write shitβ’ like <this>) and it'll get escaped and rendered correctly on the page. Basically you are really writing HTML here, but not intending to do so, Twtxt never supported HTML, and I don't think it ever should. We extended the format to support basic Markdown, and I think that's where it should end.
Probably time we wrote a Spec for this really.
@david I see it now. Is this also a problem in the app too? Or just yarnd or both?
@balloon-fu-sen Thank you for reaching out π I had alraedy done so via Email too a few days back and she upgraded her Pod to yarnd/0.16.x π
@kat Welcome back!!!! π Did you upgrade your yarnd? π€
π₯³ Finally! After nearly 4 years, yarnd v0.16.0 "Silver Sojourner" is out! π Twt Hash v2, SQLite FTS5 search, HTMX-powered UI, first-time setup wizard and literally hundreds of bug fixes π
Release notes: https://git.mills.io/yarnsocial/yarn/releases/tag/0.16.0
Upgrading is fully automatic β the Twt Hash v2 migration re-fetches all feeds on first start, so expect the first cycle to be a bit heavier. Images on Docker Hub as prologic/yarnd:0.16.0 π
cc @kat @abucci @shinyoukai @eldersnake π
π definitely using the Twtxt App as my daily-driver now for Twtxt/Yarn. Not using twtd however, as I just pair the app with my already existing yarnd powered profile on twtxt.net
Looks like twtxt.app on mobile emits +00:00 UTC timestamps instead of Z -- Yarnd should handle both, but doesn't π€¦ββοΈ On the list π€
@bender @david Good debugging session π Sounds like the root cause is twtxt.app on mobile β +00:00 timestamps and quoted mentions. I'll dig into Yarnd's side of that π§
@bender Yeah, Yarnd's mention parser is pretty naive β if twtxt.app wraps the mention in quotes it probably strips them wrong. Worth fixing π€
+00:00 vs Z should be treated as equivalent UTC π€¦ββοΈ I'll take a look at the timestamp parsing in Yarnd π§
I'm starting to use the twtxt.app as my daily driver now as opposed to yarnd and my pod twtxt.met π₯³
@bender Please create an issue for this too! Probably against twtd right? We should validate new fetchers and see if they are real clients or not. I think yarnd already does ybis quite well? π§
Hello everyone ! π Behold I bring you (after many years) the launch of the Twtxt App π -- Ye, this is a Desktop and Mobile app built as a Progressive Web App (PWA) using a little framework (Swag) I put together iafter some experiments @xuu and I did in Go and HTMX and Service Workers.
The App is offline-first and supports installing to Desktop and Mobile (add to Home screen) and supports a number of publishing backends, including Yarn.social's yarnd Pod, Github, Codeberg/Gitea, and a little tiny twtd Twtxt server (See: https://git.mills.io/yarnsocial/twtd).
Please try it out, no need for any account(s) or such, works with your existing feed(s) (as long as the publishing backends work well enough for you!). Please give me feedback! π
Also, did you know the Twtxt Search Engine is back? π
@balloonfu-sen Do you mind git pull && make build and updating your yarnd instance so it's in-line with the new Hash v2 spec π
Seems to be good now π
As-is yarnd π€£
@balloonfu-sen Oh! You're running Yarn.social's yarnd? π
That's why I was able to see your reply so quickly/easily ! Nice! And welcome! π
I have to say. A well designed Hypermedia Driven Web Application such as yarndβ using HTMX is just as good, i'd not better, than one written in React.
Hmmm all these tilde.club feeds have no # nick and is messing with yarnd's behavior π
@itsericwoodward Also just a heads up, GIF(s) aren't supproted as an Avatar type on yarnd (what runs twtxt.net). I'd change this to something that's more supproted like PNG, JPEG, etc.
Going to try and few up a few more UX bugs today with yarnd.
After yarnd v0.16 is released and the next round of specification updates are done and dusted, who wants me to have another crack at building Twtxt and activity pub integration support?
Today I added support for Let's Encrypt to eris via DNS-01 challenge. Updated the gcore libdns package I wrote for Caddy, Maddy and now Eris. Add support for yarn's cache to support # type = bot and optionally # retention = N so that feeds like @tiktok work like they did before, and... Updated some internal metrics in yarnd to be IMO "better", with queue depth, queue time and last processing time for feeds.
Interesting factoid... By inspecting my "followers" list every now and again, I can tell who uses a client like jenny, tt or any other client where fetches are driven by user interactions of invoking the app. What do we call this type of client? Hmmm π€ Then I can tell who uses yarnd because they are "seen" more frequently π€£
First draft of yarnd 0.16 release notes. π -- Probably needs some tweaking and fixing, but it's sounding alright so far π #yarnd
Iβm thinking of building a hardened peering protocol for Yarn.socialβs yarnd: pods establish cryptographic identities, exchange signed /info and /twt payloads with signature verification, ensuring authenticity, integrity, and spoof-proof identity validation across the distributed network.
π‘ I had this crazy idea (or is it?) last night while thinking about Twtxt and Yarn.social π
There are two things I think that could be really useful additions to the yarnd UI/UX experience (for those that use it) and as "client" features (not spec changes). The two ideas are quite simple:
- Voting -- a way to cast, collect a vote on a decision, topic or opinion.
- RSVP -- a way to "rsvp" to a virtual (pr physical) event.
Both would use "plain text" on top of the way we already use Twtxt today and clients would render an appropriate UI/UX.
@bender You will be pleased to know that yarnd now only consumes ~60-80MB of memory depending on load π€£ And bugger all CPU π
Timeline Sandbox