Sunday, August 27, 2023

The Making of Soundlets+

Hello. I am CCN0, notorious soundboard maker. I have worked on many soundboards in my time working on my website. It all accumulated into Soundlets+, an application I made to make and share your own soundboard.

It all began with memesoundboard.com. It was a site filled with 100s of sounds. It was pretty fun. Until the school blocked it. It was unfortunate seeing people going to the shadiest websites known to man just to make a joke, using YouTube, and struggling to mute a tab. Very sad. So I decided that I would create my own. This was before I even knew how Javascript worked. I had a website, HTML and CSS knowledge, all I had to do was teach myself. And so I began work.

Eventually, I created Funny Hahas, named that because it was 3AM and I had spent the last 3 hours working on it. There were 15 sounds. You couldn't spam sounds, use them on other sites, it was very bland. It was titled Clever so that it could be disguised between other tabs. It was very primitive but testing it in class worked. People who knew me knew I played the sound, but teachers couldn't tell the difference. It was great, I told people about it, they told people about, they told their friends about it. Until I received the first request to add a sound. Most of the sounds I added were just the easiest ones to remember from memesoundboard, and I added sounds, and people didn't like it.

The sounds I would add were collected over a few weeks, so most of the memes were stale by the time they were added. The way I made the site meant that sounds were hard to add, I couldn't add one at a time, it was bad. I had a Google Form where people could request sounds, and going through that, once, was terrible. It was filled with spam, jokes, literally nothing (like someone just pressed the space bar), and I could only add a few sounds. I also figured out how to turn sounds into bookmarklets, where you could use them everywhere.

After that shit, I decided that I was going to add a few more sounds, and deprecate Funny Hahas for good. I took a break from soundboards for a bit, working on games, other apps like CCN0TEPAD, updating my website, and eventually I decided it was time to get back to work. So I had the idea for Wikinoise, a soundboard disguised as Wikipedia. It was Funny Hahas (B), but I changed the format to look like mobile Wikipedia. I only added a few sounds before giving up on it because I don't like Wikimedia's API and thought it would be too complicated to host anywhere other than my site.

Summer 2023. I had learned some Javascript, and I had an idea. What if you made your own soundboard bookmarklets? It was a very simple app to make, I had created an app that just redirects you from FANDOM.com to BreezeWiki.com, all I had to do was change it to work for sounds. And so Soundlets was born, a portmanteau of sound and bookmarklet. And the next day, I had a bigger idea. What if you made the soundboard? I had worked with HTML nodes before, so I thought it would be easy.

I started work at noon. I took the Soundlets code, and now had to figure out how to do this. I already knew what I wanted it to look like, how the editbar was ordered, how boards were saved, and I wanted it so that you can share with people. This seemed like a daunting task, but I eventually got nodes working, so you could add sounds, add dividers, add breaks, and undo the last change. Now all I had to do was save this to a JSON file. It was easier than I thought, the hard part was loading them from this JSON. I then realized that people probably won't just download a file called soundboard.json. So I had the idea of using the URL hash (the # part after the URL) as the JSON. You just copy and paste the JSON at the end, and you could load it like that. But I realized people weren't gonna save it to their computer, and then copy the text, and then paste it in a URL. Plus the URLs wouldn't work on apps like Instagram, iMessage, not even Discord could handle such a link. So I made it so that you could just copy the link to the board you had created, and changed it so the link saved using URI encoding/decoding.

Currently, we are on v1.3 of Soundlets+. Just because I am done with soundboards doesn't mean I'm done with Soundlets+. It will continue to be maintained until it is truly perfect. Thank you for reading.

No comments:

Post a Comment

Terter v0.1.3

Changes Support for wildcards (*) in URLs. e.g. (*://example.com) or (*#helloworld) Popup now displays saved URLs I hated working on th...