zfaust
Journey in JS
For my second packet I relied on a site called Cosmos to host my documentation. Branded as the, “alternative to Pinterest” I didn’t have any desire to use it as a source for inspiration. I just wanted to use it for its unique way of displaying content.
Cosmos uses a similar folder system as Pinterest where posts are organized in collections based on arbitrary themes set by the user. The items are displayed in a grid allowing users to scroll through it. But Cosmos also allowed a gallery view, giving viewers the ability to scroll the board through infinite, multi-directional paths.
I loved this concept. I even paid to upgrade my subscription so I could upload as many posts as I want to really flood out this system.
Unbeknownst to me, Cosmos was actually in the process of updating it’s UI. After a week of presenting my second packet, the site made it’s beta version official, and away with the gallery view.
I spent a week scrolling through Reddit, Cosmos’ socials, and various forums on Cosmos’ site. No one mentioning that the site got rid of the gallery view.
Not knowing how to proceed, I took my advisor’s advice, and decided to try my hand at recreating the feature through JavaScript.
Although I have some experience coding (thanks MySpace), and operating a CMS (thanks AMNH), I felt very uncomfortable at trying my hand in JS. I didn’t even know how to research what I was looking for.
After a few days I came across the feature on some random forum. I spent even more days trying to figure out how to add the custom code to my SquareSpace sites. After posting and sharing thread after thread on a multitude of forums I gave up.
I quickly pivoted to thinking of ways of just faking it. Maybe I could make a giant artboard in Illustrator and recreate the infinite grid. I could record myself moving around it and just displaying that video on loop at residency.
Or maybe I could make all the work into a giant poster and just have viewers walk around it. Maybe play with scale so some things are seen from far away while others only up close.
No matter how many ideas I created I felt like a sham. I couldn’t give up, there’s no way I could let this slip through my fingers. This isn’t undegrad, I had to find a solution.
I continued to search. Diving deeper each time to find a way to learn.
I’d love to say I sat down and put in the work of learning how to code this from scratch but there’s no way I could do that, and figure out something for my third packet.
Eventually I came across a platform builder called, Framer. A website builder similar to SquareSpace but centered around more customization.
Even better, this platform has a store where users can sell their scripts. Lo and behold many people created exactly what I was looking for.
Game over, project done.
Incorrect.
Despite buying what I thought would be an easy template where I could just plug in all my content and have it work seamlessly, it turned out to be a lor more work.
Just when I thought I was done with JavaScript I was actually getting deeper into the weeds. I had to figure out a way to change the ratios of my posts, find a way to change their alignment, adding popups, adding a multi-directional scroll, adding lazyload images, removing lazyload images, playing with various heights, and OH making everything repeat.
After a very, very long five-day weekend I finally got it to where I wanted it.
The lesson learned is that I do in fact hate JS. I don’t know how the developers at the museum do it, but I’m glad they do. And I’m glad for the help they provided me. As much as I love being able to do everything, I’m greatful in knowing that there are many things out in the world that I just don’t care to learn.