Show HN: KiCad in the Browser

(demo.pcbjam.com)

54 points | by ViktorEE 4 hours ago

8 comments

  • xrd 1 hour ago
    I love that Firefox is the best.

    I don't use kicad. But, this project, as a web-first version of kicad, seems like it offers the best opportunities to create a shared learning community. Is that part of the long term goal?

    I would love to experiment with kicad, but I learn best through watching others and asking questions. Can I do that with this? Is there a way I could "watch" other sessions as the build progresses? Or, chat about what I see there with other people interested in learning and teaching?

    Very nice work!

    • ViktorEE 1 hour ago
      I love that too, the sad part is that ~30% of our visitors ( from Plausible ) are on Safari which is... Not good :) No threads for ya there. At least it works.

      Yes! That's the plan for "marketing". And yes, we'll have to usual "follow" features ( without the popups etc which doesn't really suit your usecase ), chat ( maybe voice chat? ).

      Thanks!!

  • dark-star 1 minute ago
    So you can easily get it to work in the browser, but the dozens of core developers can't get it to work properly on Wayland[1]? Something smells fishy...

    [1] https://www.kicad.org/blog/2025/06/KiCad-and-Wayland-Support...

  • karlkloss 1 hour ago
    I can totally see pcb manufacturers like JLC integrating this into their websites, with a set of customized design rules and an order button.
    • ViktorEE 1 hour ago
      Yea, it makes sense. JLC already own EasyEDA, it's an interesting matchup for sure.
      • IgorPartola 1 hour ago
        I initially found EasyEDA to be easier to use especially with auto routing. But KiCAD is definitely more powerful.
        • ViktorEE 58 minutes ago
          It's on the "roadmap", someday I'll take some time to take a look at the autorouting situtation. I have a few ideas.
  • ViktorEE 2 hours ago
    To open a demo board click "Open" in the Projects/Demo board section then "Open in PCB Editor" at demo.kicad_pcb in Files.

    Next time I'll make a smoother demo...

    • sixtyj 37 minutes ago
      I have tried to open demo on mobile and it fails (iOS 18.6.2). Safari browser returns “there was a repeated problem with the page…”
      • ViktorEE 32 minutes ago
        Yeah, this is not optimized to mobile yet. My Iphone 13 pro did open once, didn't check further. Sometimes it works if you open it on a new tab ( memory issues ).
  • thenthenthen 3 hours ago
    Small suggestion, it would be nice to see the total size of the download during the first load (sry I am on a slow metered connection).
    • ViktorEE 3 hours ago
      Yea, I'll add it in the next deploy. Thanks! Right now it's about ~30 MB for the big app ( 2 editors + footprint + symbol ).
  • varun_ch 2 hours ago
    This is really cool. I think a lot of people will initially dismiss your demo as ‘slop’ unless the landing page drops some of the Claude-isms (text and design) because it’s clear this is a project with passion in it, but the demo page and landing page both look like something Claude might’ve made with a single prompt.
    • ViktorEE 2 hours ago
      You're wrong! It was two prompts! Jokes aside, you're right. I wanted to have something up quickly. Before the real launch ( and not just this demo ) I'll write one by hand, I'm against AI written copy / blogposts, just could not find the headspace to focus.

      Again, thanks for the feedback, I'll take it!

      • thegrim33 1 hour ago
        Looking at the long list of the things you had to do to get this working .. and you couldn't "find" the energy to write some text for the landing page yourself? For a project you want people to buy from you? You supposedly put in all that effort, and built these sites around it, and building a business around it, and you couldn't deal with writing descriptions of it yourself? Seriously?
        • ViktorEE 1 hour ago
          Yea, it sounds worse than it felt in that light lol. You have a point. In hindsight I should've taken a day or two for writing a good copy, I was just very impatient and wanted to push this out.

          To be fair, this is not "the project" yet, just a first preview. I'm an engineer, doing things like this is "work", optimizing the bundle size is fun. Sorry.

          • mlyle 13 minutes ago
            Please think about how this can be set up to track upstream Kicad. Hopefully you have a small adaptation layer and some clever build, not wholesale changes to the code.

            I teach HS classes where a lot of students end up doing some pretty serious PCB layout. We already benefit from MCAD that runs in the browser-- KiCad running in the browser would be a major boon to reduce setup requirements for student computers.

            Thinking about how this could play with revision control and KiCad documents (footprint/symbol library, schematic, board, production gerbers) in Git repositories would be really helpful for my use case, too.

            Congratulations- this looks really slick!

        • 0x62 1 hour ago
          Eh. This isn’t a finished project. Designing and writing marketing content requires a completely different headspace to when you’re working the product, and isn’t something you can context switch easily.

          I only have a problem with obvious AI marketing pages when it’s a finished product that’s on sale.

          • ViktorEE 59 minutes ago
            To my former self two days ago: if you work almost a year on something take two days to polish a demo.
  • brokensegue 2 hours ago
    Is this at all related to kicanvas.org
    • ViktorEE 2 hours ago
      Nope, not at all. This is the original KiCad sources with some modifications to make it run in a browser. As far as I know kicanvas renders PCBs, we can do the whole workflow ( create a schematic => pcb => DRC checks, exports etc ).
  • ViktorEE 4 hours ago
    Happy to answer any questions & feel free to reach out ( email in my profile )!
    • JKCalhoun 3 hours ago
      I like all the utility you have already built in.

      My selfish suggestion would be to add support to populate the part numbers for all the components from LCSC's database. JLCPCB wants these numbers in order to assemble a PCB.

      (Currently I use a JLCPCB plug-in to do this in KiCAD.)

      • ViktorEE 3 hours ago
        thanks! one thing we did not port is the plugin system: it's quite hard to run python on the web ( AFAIK pyodide is not enough here ) and I've heard that it will be deprecated in the next version.

        The KiCad editor's state is accessible from the web app, we'll do some kind of plugin system like Figma's or just implement these functions as an overlay. We'll see, thanks for the tip!