from Hacker News

Show HN: Donobu – Mac App for Web Automation and Testing

by wewtyflakes on 10/9/24, 4:18 PM with 35 comments

Been working on a desktop app for Mac that lets you create web flows and rerun them (https://www.donobu.com/).

You can optionally use AI (BYOK: bring your own keys) to create flows for you and to do other interesting things, like making vision-based semantic assertions. Also, your data lives on your own filesystem, and we do not see any of it (further still, there is no phoning home at all). A nice benefit of this being a desktop app rather than a SAAS product, is that if you happen to be developing/iterating on a webpage locally, this has no problem hooking into it.

What this intends to be a good fit for: - Testing web pages, especially locally. - Exploring random webpages with a stated objective. - Automating tedious flows. Rerunning a flow won't get caught up on using a single selector (many websites randomize element IDs, for instance), there is smart failover using a prioritized list of selectors. - Getting a quick draft of an end-to-end test in Javascript.

What this is a bad fit for: - Mass web scraping (too slow). - Adversarial websites.

What we are still working out: - Click-and-drag operations. - Websites that are primarily controlled from canvas. - Smoothing out UI/UX (we are two backend engineers trying our best, and are handedly outgunned by real frontend engineers).

Fun things to try: - Asking it to assert that a webpage has a certain theme. - Asking it to run an accessibility report for a page (uses https://github.com/dequelabs/axe-core). - Asking it to run a cookie report for a page.

The tech: - Java 21 for the main business logic. - Javalin 6 for the web framework (https://javalin.io/). - Playwright for controlling the browser (https://playwright.dev/java/). - Axe for running accessibility reports (https://github.com/dequelabs/axe-core).

Critical feedback is welcome. Thanks for trying it out!

Cheers, -Justin and Vaz

  • by pavlov on 10/9/24, 7:11 PM

    Such a nice, simple landing page. I could immediately understand and appreciate what this app does by first looking at the picture where the flow is defined, then seeing the flow executed on video.

    It's like the old Apple commercial: "There is no step three."

    Congratulations on the launch!

  • by androng on 10/9/24, 11:15 PM

    Hello, I will be using your app soon. I was looking for something playwright related for the website I am making. I am so glad that the price is not "contact us".

    I noticed in your video that Donobu does not move the mouse to the search box before typing in it. I hope this does not trigger captchas or anti-bot protection--I was thinking of adding "Firebase App check" to my website since Firebase recommends it to everyone and it uses "Recaptcha Enterprise". not sure if this will turn my website into an "adverserial website".

    I think Donobu would also be a lot more helpful on mobile since there are more phones than desktops in general. I was looking for some kind of automated mobile testing and found none. quickest way I can think of to add that is using the new iOS 18 with desktop control of the phone.

    I think you could "easily" translate this to arbitrary desktop control test software. or make some other agent software that does. if you don't someone else will https://youtube.com/clip/UgkxcFMelp1K31l7pH0Sbghb4sJ-eF0O8-x... If you made the desktop control software, I think you would get mobile control software for free.

  • by sahmeepee on 10/9/24, 8:00 PM

    Playwright (and axe) is a good option, but how do I have confidence it's performing the test correctly and repeatably? If the test seems flaky how do I know it's the software and not randomness of the AI part? I want tests to be predictable.
  • by anonzzzies on 10/10/24, 8:32 AM

    Nice work! Can you add support for OpenRouter? Then it's easier to switch models too.

    Edit; it's actually really impressive; I try them all every so many months but this one seems to be the first one that actually works.

  • by Brajeshwar on 10/10/24, 3:19 AM

    Looks good. I can understand the few UX quirks, as this is an early version. Unfortunately, I keep getting an "Internal error ".

    https://www.dropbox.com/scl/fi/8npc2rppe0soyz15dmbhk/screens...

  • by asabla on 10/9/24, 9:53 PM

    This looks really interesting and could really be a nice addition to my daily work.

    I just downloaded the application, but are unable add OpenAI API keys. Looks like it's probably on my end (with quite an aggressive DNS blocking lists). So my guess here is: I'm unable to add API keys when telemetry is blocked.

    Suggestion: please do add some error message when then this occurs. As in, did the request fail (500), faulty key etc

  • by zombot on 10/10/24, 9:34 AM

    Any support for locally installed LLMs?
  • by tdquang on 10/10/24, 11:34 PM

    Tried it out — nice work guys! Will be using for our E2E testing.
  • by shmoogy on 10/10/24, 2:18 PM

    Just FYI I signed up and your "Confirm Your Signup" email went into our junk mail (o365)

    e: and the magic link doesnt work: Sorry, we could not authenticate you. Please try again.

  • by rexreed on 10/9/24, 7:19 PM

    Interesting! How far away is this tool from being a desktop simple RPA solution? Would it be able to interact with desktop apps and simulate mouse or keyboard actions in the future?
  • by bkyan on 10/9/24, 8:41 PM

    Is there anything in the tech stack that make this app specific to Macs, or are you simply rolling this out to Macs, first?
  • by evilduck on 10/10/24, 2:08 PM

    This looks like a promising start.

    Any near term plans for exploring the use of local LLMs?

  • by mattfrommars on 10/9/24, 9:05 PM

    Just to be clear, did you really decide to use Java to build a desktop application for Mac? I see you mentioned Java 21 as main business logic layer, which technology did you use to build the desktop application?
  • by toisanji on 10/10/24, 1:12 AM

    nice work, can you export the code later for integration with our CI/CD pipeline?