You are browsing as a guest. Sign up (or log in) to start making projects!

5h 29m 28s logged

HUGE devlog! I made a TON of changes, improvements, etc!

First, mobile compatibility!
The user can now change the system prompt.
I added a nice (basic) loading screen .
I improved a big database inefficiency with the messaging system. (before I continue, please consider the fact that it was probably 22:30 when I coded this, and I was likely somewhat delirious), the messaging system would take the current array from the DB, add the new messages, and replace the entire file. FOR EVERY MESSAGE.
This is heavy on RAM, slow and way more operations than are needed, also getting slower the longer the chat is.
Now, when the user sends a message and the AI replies, that pair of messages get sent over and pushed to the chat. 2 messages, not the entire chat!
I finally added the Lighter, Web, and UI pages.
I had a tag that bound to a routeSelect variable. This routeSelect variable would determine the apiRoute.
The fix was to just get rid of the routeSelect and bind the to the apiRoute. (whoops!)
OH! Something I totally almost forgot to mention! I made the starting pages! You now follow this flow:

Press the PEAK start button, grab your admin code, get prompted to set up Ollama (or the cloud API), then enter your username, then finally, the last page gives you the same glorious button to finish the tutorial/intro, alongside the repo link.
I also edited the README a bunch to add instructions for setup. I’m opting to recommend Bun over Node for running it.
Also! I tested more for the RAM usage. I found that (after rebooting my Pi) I managed to get <70MB usage at idle. That is INSANE!
This will - of course fluctuate with the number of concurrent users/prompts, but is really impressive nonetheless.
I also tested in on my Pi Z2W to make sure it worked. Start-to-finish, I found a few missing dependencies in the package.json, which I quickly added.

Now, the project can be downloaded and run in just 5 terminal commands!
Finally, I ran a code review thingy using VSCode’s AI tool (I made sure to tell it not to generate code!) and it found a few minor bugs, so I fixed the main ones. I also ignored some because they’re incredibly unlikely to happen in general, let alone during the initial ship period. I’d rather not waste time fixing things like “what if the server dies midway through this exact token output and that goes kaboom” or whatever lol.
Oh, one last thing, I removed my custom alerts. They were nice, but also very useless… I replaced them with the browser’s own confirmation dialog, since it’s simpler and honestly nicer to use! Also 100% cross-platform.

Two little sub-notes, I can’t show all pages of the setup because of the attachment limit on Stardance, so you’ll just have to run the project yourself to see it (hehehe), and secondly, don’t worry, I’ll make sure to change the password shown in that image. I’m gonna delete the database entirely again before I ship!

Anyway! Sorry again for the long devlog, I just have so much to say! I also omitted a TON of smaller optimisations/changes again, but they’re generally irrelevant to the user’s experience, and I doubt anyone would want to read a 10,000 word devlog like “and then I added another pixel to the offset… Then removed it… Then added it back…”
If I remember something less brain-meltingly boring, I’ll make sure to add it! :pepe-hacker:
(P.S, this is me coming back and editing the project because I’d WAY surpassed the character limit!)

Thanks so much for reading what’s possibly one of my last devlogs! :pepelove:

Happy hacking everyone! I MIGHT see you in the next one! :wavey:

0
9

Comments 0

No comments yet. Be the first!