from Hacker News

Show HN: EveryoneDraw – An infinite collaborative drawing canvas

by seangransee on 12/3/21, 7:46 PM with 15 comments

  • by rgtomaz on 12/3/21, 8:46 PM

    Very cool project! That would be great if I could drag the mouse to draw instead of just clicking. An "export area" would be a nice-to-have feature in the future as well.

    Cheers.

  • by seangransee on 12/3/21, 7:47 PM

    OP here. It’s been a while since I built something outside of work, so I decided to build something I would have fun using and sharing with others.

    It’s inspired by Reddit’s r/place experiment from 2017, with four key differences:

    - The canvas is infinite [1]

    - There’s no time limit. The canvas can keep evolving forever.

    - There’s no signup required. Just click the link and start drawing.

    - You can randomly teleport far away from the center to start your own drawing that nobody will find without the link. For example: [2]

    Everything displays in real time. It should be fun to watch when there are a bunch of people drawing simultaneously.

    A few similar apps have popped up over the years, but I found them all to be a bit cluttered, so I wanted to build something with more of a focus on the art. When zoomed in, there’s minimal UI aside from what’s needed to select a color. When zoomed out, the canvas covers 100% of the viewport. I also tried to make drawing and navigating easy on both desktop and mobile.

    The frontend is mostly custom built using native browser Canvas and Websocket APIs. The backend is Go code running on AWS Lambda with pixels stored in DynamoDB. I mostly optimized for making it cost as little as possible to run long-term. When there’s low usage, the AWS bill is $0.50 per month (for Route 53) and the actual hosting costs are free. I’m hoping to keep this running indefinitely without having to worry about cost and maintenance.

    Draw something and let me know what you think! Happy to answer any questions about how it was built.

    [1] Okay, the canvas isn’t actually infinite right now. Things stop working once you run up against Javascript’s MAX_SAFE_INTEGER. I plan on eventually having the canvas wrap around when it hits that value, making the canvas work for any huge number the user might hard-code into the URL.

    [2] https://everyonedraw.com/-2/5030/81159

  • by finiteseries on 12/4/21, 1:40 PM

    17 hours after launch and of course, a solid rainbow road is already in place!

    edit wow, that got very 4chan, very fast in the hour since my comment. The Internet for ya!

  • by sam_bristow on 12/4/21, 2:54 AM

    How do you plan on avoiding this turning into the usual collection of swastikas, penises and racial slurs that usually happens?
  • by seangransee on 12/4/21, 5:58 PM

    Shutting this thing down for now. Anyone speculating that this would devolve into a cesspit was totally right.
  • by rxsel on 12/5/21, 2:00 AM

    RIP everyonedraw.com

    Was a good 12hrs