from Hacker News

Ask HN: How would you build OSS Figma?

by kshitij_libra on 1/21/24, 12:00 PM with 8 comments

I know that figma uses Wasm (from blog), but I am new to WASM, and there seem to be quite a few options (and languages) to choose from.

If one was to build an OSS Figma, what are the latest libraries and toolkits one would use?

  • by lgkk on 1/21/24, 10:25 PM

    I’d use Go and wasm.

    I’d do the multiplayer aspect first, that is the canvas and positions of each user.

    Then I’d start adding components to the canvas and tracking those.

    And finally I’d add metadata and other features to those components.

    I don’t think in theory the base of the project would be that hard. It’s building those features that would be challenging, because there are a lot of small details that are important to designers.

    I don’t think you need any libraries beyond whatever for wasm. Go concurrency is simple and straightforward. Could probably be done in a weekend.

    I have not done anything with wasm specifically but I have built a real time collaboration tool backend using Go. It took like four days to put together the base functionality and another month to add all the features.

    I could be totally wrong in my approach but I hope you figure it out and share it with us! Cheers

  • by cranberryturkey on 1/21/24, 12:30 PM

    checkout https://penpot.app -- its OSS figma.