Creating a standalone web automation tool with Electron

I’m trying to build an Electron app for web automation that works based on user input through a GUI. I’ve looked into Phantom and Selenium with Chromedriver as possible options. But I’m wondering if there’s a way to make this app work without users needing to do extra setup like adding things to their PATH. My goal is to create something that people can just download and use right away — no fuss, no muss. Is this doable? Or should I be looking at different tools or methods? I’m open to any suggestions or ideas that could help me make this happen. I really want to make it as simple as possible for the end user so they can just click and go without worrying about installations or configurations. Any thoughts on how to achieve this would be great. Thanks in advance for your help!

For your standalone web automation tool, I’d recommend looking into Playwright. It’s a newer framework that supports multiple browsers and can be easily integrated with Electron. The key advantage is that Playwright can be bundled with your app, eliminating the need for users to install additional components.

To achieve a seamless experience, you could package the Playwright browser binaries with your Electron app. This approach ensures users can run the automation tool immediately after download, without any extra setup steps.

Remember to handle browser updates within your app to maintain compatibility and security. While this method increases your initial package size, it significantly improves user experience by providing a truly standalone solution.

Having worked on similar projects, I’d suggest considering Playwright with Electron, but with a twist. Instead of bundling the entire browser, you could use a custom Chromium build optimized for your specific needs. This approach reduces the package size while still providing a standalone solution.

Implement a smart update system that only downloads necessary components when needed, rather than including everything upfront. This keeps your initial download small and ensures users always have the latest automation capabilities.

For the GUI, leverage Electron’s native capabilities to create an intuitive interface. Focus on making the automation process visual and interactive, allowing users to record actions or use a simple scripting language.

Remember to thoroughly test on different OS versions to ensure compatibility. With this setup, you should be able to create a powerful, user-friendly web automation tool that works out of the box.

have you thought about using pywebview? it’s lighter than electron and lets u bundle python with your app. you can use libraries like selenium or requests for web automation, all packaged together. users just download and run, no extra setup needed. might be worth looking into for your project

hey pete, have u considered using puppeteer? it’s built on chromium and can be bundled with electron. no extra setup for users. just package everything together and they can run it straight outta the box. might be worth checking out for what ur trying to do

I’ve actually been working on something similar recently, and I found that using Tauri instead of Electron could be a game-changer for what you’re trying to achieve. Tauri is lighter than Electron and allows you to bundle a WebView with your app, which means you can use web technologies for automation without the need for external dependencies.

The beauty of Tauri is that it compiles to a native executable for each platform, so users don’t need to install anything extra. You can use libraries like webdriverio or cypress within your Tauri app for web automation tasks. This approach gives you a smaller app size and better performance compared to Electron.

One thing to keep in mind is that you’ll need to handle browser updates yourself, but that’s manageable with proper versioning and update mechanisms built into your app. It’s definitely worth exploring if you want a truly standalone solution that’s easy for users to just download and run.