June 17, 2025
Works as intended, maybe make an executable for windows out of it or somth like that, nice project :D
I spent a baffling amount of time on trying to make executables for different operating systems and failed :( But it's ok cause I also made a github repo and READMEs. I messed up grandly by trying to retroactively apply .gitignore from a random Stack Overflow answer I didn't fully understand, but it's ok cause I used git config pull.rebase true and everything ended up fine :)
I asked my mom to try out the program and she broke it in five different ways. So now the program is much more user-proof! Yay!!
Added the option to save the audio file (and delete the temporary audio file if otherwise)! I also worked on the interface so that people can't specify weird/impossible options like playing at -3wpm.
Attached is a video. Turn the volume up to hear the generated morse code at the end!
Turns out the pop was because the audio library I was using essentially initializes a new audio stream every time I play a single tone. I made a new function inside the library to play multiple sounds all in one stream. No more weird speaker noises!
Good news: Sound plays! And it kinda sorta resembles what it's supposed to sound like!
Bad news: Every time the sound plays there's a small pop of the speakers. Also, the morse code is really, really, slow.
Made all user-interactive parts, as well as a config file to store/read from!
I made this program primarily to experiment with shell/terminal interfaces. I've been learning morse code recently, so I wanted a lightweight python script that I can use to listen to Moby-Dick at 20wpm :)
Convert from any text (from file or copy pasted) to morse code! Fully customizable for CW training with farnsworth spacing. Made so that I can practice receiving up to 20wpms with my favorite books/articles :)
Hi I'm back!! This app is full of bugs and I lost motivation for a bit, but I'm here now :)
I fixed a bug with mode switching and finally found an alternative for passing a singular webModel instance down 4 nested subviews (which was terrible). Here's a diagram of what's different.
Somehow half my files were named Anything But My Eyes instead of Anything But My Hands?? So I had to rename many things. Renaming entire projects in Xcode is surprisingly complicated. I spend a pretty long time essentially playing whack-a-mole with old names.
Final touches before updating the mod on Nexus Mods! Three new preferences were added in total, two of them with custom dialogue. It was fun experimenting with custom portraits and multi-page dialogue.
Here's a picture of Willy liking crabs now.
Shane now has angry -> sad portraits when responding to being gifted beer as a hated gift.
Forgot to add this on to the last updates:
- Shane now hates beer after his 6-heart event, and has custom dialogue that addresses the player directly by name for that extra disappointment!
- Willy likes crabs because he loves books about crabbing and calls himself a crab enthusiast
Anyways, here' a photo of one of the bugs. I messed up a special code that indicates the dialogue should be split up into two boxes, and got a coin symbol instead??
Leah likes hardwood as well as marble, and has custom dialogue relating it to her art work :)
Gave up on the case due to lack of time, but added a capslock feature and submitted it to the ysws!
Added ducks because I found nice ascii art online
Attempting to make a case
Started the day of the deadline. 5 hours is the requirement, wish me luck;;. I tried to get the rick roll to autoplay first in powershell but Windows thought it was a virus, so I'm having it open the video online instead. It took me so long to find a link online that is ad-free, autoplay, and unmuted by default. Thank you internet archive <3
A script for hackducky.hackclub.com that rick rolls the user after a friendly message to not plug in random flash drives :) (it also turns on capslock permanently and an ascii image of Rick Astley will stop you if you try to un-caps-lock your keyboard.) AI used to last-minute debug but not to generate blocks of code.
I somehow broke the app by adding the option to switch search engines... but the error went away?? Mysteriously?? It works now?? I didn't really fix the bug, so I'll proceed with extreme caution.
Finally got around to restructuring my code! It's less redundant now. Also added more settings options.
Added a bottom bound for scrolling (it doesn't scroll off into infinity anymore! yay!) and improved the toolbar. I spent a solid hour trying to figure out why a background color was going out of bounds of the toolbar... it was because of one (1) line of code that set the background color of some random subview.
Anyways. My old crusty code is on its last legs (structurally). I can feel it. If I try to expand further without restructuring it's gonna come crumbling down because passing one singular instance of a web model into 4 nested subviews is not healthy?? So I'll get around to fixing that... eventually.
Made a settings page! It can change the scrolling mode.
I revived an old project! All the main features technically function right now, but they make my phone heat up and they're all kinda janky with no real main UI yet. Attached is a video of some janky eye-scrolling action. The blue circle is supposed to match where I'm looking with my eyes.
An app to help you scroll webpages without your hands. Perfect for bedrotting in wintertime without having to take your hands out of the blanket <3
Final touches! Added a README, got rid of dummy code, updated preferences, uploaded to Nexus Mods, and so on.
Finished adding config options, which means all features are complete!
Big progress:
- Got rid of the config menu because settings wasn't changing anything, but then figured things out and brought back the config menu :)
- Shane likes Joja Cola after 6-heart event
- Individual preferences can be toggled
- Mod can be turned on/off without installing/uninstalling
Added log names and customized config update times so that it's as frequent as possible!
Started making a config menu!
Tried to figure out how to make dynamic season-dependent changes. Settled with hard-coding in gift preferences for Lewis (for now).
I spent a lot of time trying to fix project logging...
Earlier, I decided to make a github repository of the parent folder for my project (so that I can add other mods in the same repo later on). BAD idea. Even though I was working on the same project, hackatime started registering all activity as from <> and I couldn't post a devlog because the coding time wasn't registering with this project. Found a fix? workaround? by connecting both hackatime projects to this project.
Making a Content Patcher Mod is harder than I thought π Trying to untangle the gift preferences priority logic and using it to override certain preferences took another 30mins (not logged because it was all google :( )
Added new preferences and debugged a lot! I figured out how to use the debugging functions in Content Patcher. Here's a picture of one of the bugs.
Installed base mods (it was my first time) and added test items to universal preferences. More time was spent looking up how to run mods than actually coding :(
A Stardew Valley mod to add new gift preferences that have been implied through in-game content such as dialogue or secret notes. I made it because some NPC gift tastes didn't make sense when I first played the game! Github Copilot was used to autocomplete repetitive blocks of code. βοΈNOTE: If you don't have Stardew Valley, I have a demo video in my repository :)
Fan-made widget for your phone that shows your "daily luck" - just like in the Stardew Valley TV :D
This was widely regarded as a great move by everyone.