Today was the unfun side of vibe coding, getting stuck with Mixstr.
For some reason since I mainly focused on the desktop experience and found android laggy my phone doesn't load posts reliably at all anymore.
Will be annoying to find out why. I'm also currently at a wall in trying to make it not so heavy, its been heavy basically from day 1 and I don't know a good day to fix it.
So will mixstr ever make it out of its experimental stage? I'm not optimistic, but it would be so cool if there was a way to make it perform since the UX of it is quite nice now.
:H::e::n::k::y:!!
Henk.Tech
npub1600y...889v
Sysadmin | AI Entertainment Enthousiast | Game Server Operator | Liberal (as in Liberty) Nationalist (each country has a right to be sovereign and should not impose their will on other countries)
- There is only a paradox if you don't admit it
See me post with a really long address on mastodon? That's a bridge. My real profile is : https://ditto.pub/@henk.tech
My webhost blocks some requests behind proof of work, if my NIP-05 errors for you then you can verify it manually. I unfortunately can't disable this.
@Alex Gleason once I built something with shakespear but the AI made it very inefficient and laggy from the getgo but made that worse over time. What is the best route to getting what I built to perform?
Its gotten so bad that without realizing it its not even rendering posts anymore on phones probably due to timeouts.
Its incredible what you can make local LLM's do.
This is what claude made on its own when I explained it the #mixstr concept.
It was horrible, it didn't adhere to the rest of the UI design at all and just stuck a bunch of livestream tiles on top of the page. The mode buttons above that are the key point to Mixstr? No effect at all.
That had to be better so I put #koboldcpp and Qwen-3.5-27B at work again and its been doing a great job once it grasped what I wanted.
Here is a fun effect of that which I didn't think about but got as a direct consequence of how modular the Mixstr views are.
It makes absolute sense, there are 24/7 music channels on Nostr and one of the primary things people host 24/7 is music. Why shouldn't that be in an audio player format?
Now it can be whenever you want!
It was horrible, it didn't adhere to the rest of the UI design at all and just stuck a bunch of livestream tiles on top of the page. The mode buttons above that are the key point to Mixstr? No effect at all.
That had to be better so I put #koboldcpp and Qwen-3.5-27B at work again and its been doing a great job once it grasped what I wanted.
Here is a fun effect of that which I didn't think about but got as a direct consequence of how modular the Mixstr views are.
It makes absolute sense, there are 24/7 music channels on Nostr and one of the primary things people host 24/7 is music. Why shouldn't that be in an audio player format?
Now it can be whenever you want!The new and improved Mixstr desktop livestream page!
No more chat underneath the video but a proper sidebar.
Now also blocks people in chat that either you or the streamer blocked.
No more chat underneath the video but a proper sidebar.
Now also blocks people in chat that either you or the streamer blocked.Local AI running at home.
What could that possibly code?
So far for my Mixstr experiment?
- It added a page for keywords so keywords are clickable and easier to follow.
- It fixed the user blocks and applied them properly.
- Added the previews for kind 3011 events.
- Massively improved user profile loading.
- Implemented proper word wrap for new posts.
- Made emoji's properly resolve.
- Added a button so you can edit the json raw for your mixstr settings.
- Implemented having notifications marked as read.
And probably more that I forgot.
It also made a decent effort at event caching but I didn't find it stable enough so for now I cut that one.
I think I saved up to $30 in API costs because I could do it with a 27B at home.
I'm loving this whole UK vs 4chan saga with the shenanigans the lawyer is pulling.
If you want a laugh and some old school pirate bay legal letter vibes its a great read.
And if you want a laugh at old school pirate bay to know what I am on about read the web sherrif one on
Both are really funny.
On Hamsters, Free Speech, and the United Kingdom – Preston Byrne
The Pirate Bay - The world's largest BitTorrent tracker
Day 3 of toying around with Mixstr, this day I am doing it on the cheap.
No more Kimi for most of it and avoided Claude entirely.
The big stuff was good to get it off the ground along with MKStack that shakespear used in the background, but for maintaining it I don't need them for a lot of things.
Locally I got my 3090's hacking away at the code and only if they fail at something important do I need to borrow kimi a bit.
I noticed for example that if you clicked on a hashtag it would break since there was no page dedicated to the hashtag, implementing hashtag pages was simple for 27B and it basically one shot them.
It also oneshot the notification change where notifications now get dismissed persistently across Mixstr sessions. And it oneshot a fix where people you blocked no longer appear in your notifications and comments.
All that stuff for free from a nice local model powered by KoboldCpp :D
But I also noticed Mixstr was missing a LOT of profile events. That one was tricky to fix and also very important, so for that one I used some of my remaining credits for Kimi. Even then it was a good long back and forth before a proper solution was found. But now I can be sure that profiles are complete, not initially since its still Nostr but over time as it keeps verifying and loading.
With 27B being so useful at many of this I can make it do things I think are simple enough for it but that are not important enough for me to want to spend credits.
#asknostr I made a proof of concept Nostr web client and I am curious if there is any interest in this. Its made with @Alex Gleason 's shakespeare and that adds up quick so certain bits are placeholders. Right now I recommend testing it with alt accounts.
Many things are missing such as remote signers, zaps (I don't know if as a newer dev its a smart idea for me to add those myself with AI) and the login flow isn't what i'd like yet.
But, this is a unique client and I hope this proof of concept is appealing, here is the idea:
- Its a very basic client by default, just a follow feed, search and DM's nothing else.
- It has highly customized lists for the side panel, you can make your own ones, name it whatever you want, and then mix the sources together that you want. If you want one that does a keyword search, adds a few hashtags and an RSS feed on top? You can! Want a relays feed? You can! Maybe you want two relay feeds combined? You can!
- Lists use NIP-44 so they are hopefully private (Correct me if this is not working in practise, since the idea is that you can follow people privately).
- If its worth liking then it is worth spreading, the idea is that if you like or reply to something it automatically rebroadcasts the event to your own relays to help spread the word and for people who see that you just interacted with something to be able to see what that something is.
- You can mark DM's as deleted, nostr doesn't support this but at least they are hidden and not cluttering your DM inbox. Currently only NIP-17 is supported.
So far I spent $60 on the idea and it should be in a place where even though it may be rough or experimental I think the core idea comes across.
You can try it at https://mixstr.pages.dev for yourself and let me know.
Is this worth continuing? If so, would you be willing to chip in with PR's or help me fund the vibe coding?
The best thing about vibecoding as a user with strong opinions about how nostr should work is that you can tell it to do those ideas. Ideas such as auto rebroadcasting events when you like them.
The worst thing about vibe coding is that the AI isn't you and does things that you are strongly opinionated about you'd never have done. And then you spend credits on fixing it.
Wisp didn't post it as a usual post, so here is how I am spending my evening :D
View quoted note →
Vibe coding nostr apps is fun, but will it actually work before my credits run out?
@Alex Gleason shakespeare is a work of static page art! But it desperately needs some AI API controls so I can prevent it from looping. Me being able to set the context , max output, epetition penalty, etc. Now I have to rely on server side overrides.