View current state of the project at GPlace
I had known about hacktoberfest before, had participated in the previous one as well but this time as an undergrad student developer I pledged to myself that I would make something that I thought felt, was technically challenging instead of just working with what I already knew.
Before starting this project I had already known of this little platform called Guilded which is kinda like discord with some little more added functionality but a way better community (imo). Keeping up with the spirit I wished to create something which had that community spirit which open source is all about.
I love that tiny little platform due to some reason (perhaps due to the people I met on it). Anyways, I had some projects related to that platform before as well, namely Cardboard (Guilded OAuth) (Cuz guilded has no OAuth frfr) and Gilboard, Guilded Server Discovery
And thus I started looking for examples where communities unexpectedly came together and made something beautiful, that was when it struck me... r/place.
R/Place has been the most unexpectedly beautiful form of culmination of community effort, order in chaos, how each individual can make a difference, each contribution can bring about a beautiful picture.
I read this article...
How we built r/place
and I was off to the races. Having never worked with the canvas API before, this was something that was technically totally new for me, but little did I know that this would also lead me to discover much of svelte and sveltekit that I often left unexploited (use:action).
I faced issues while laying out the board as well, like weird delays, while loading the canvas from postgres (7 seconds), I fixed that by implementing a redis cache. I also learnt a lot about how to implement sse, going with a custom implementation initially I later discovered a sveltekit sse package, which fell back to bcz it was just so much better :P but hey, atleast I discovered and learnt something.
You all can find the repo of the project over at https://github.com/sohamjaiswal/sveltekit-place although the actual place functionality can be improved I hope it proves to be a valid example for new people to help implement sse, redis, postgres, zenstack, docker etc. to their sveltekit projects.
P.S.
As hacktoberfest is still on, I would like to request any web dev veterans unlike myself to please help me fix a few issues for safari and mobile which GPlace still faces... mainly blurry canvas rendering on safari and memory overflow on mobile web clients.

Top comments (0)