Show HN: Control webviews programmatically with the open source Pipeable iOS SDK
For the past few months we have been working on the PipeableSDK and today we are excited to show it to you all!

What is Pipeable?

Pipeable is an open-source iOS and (soon) Android SDK that allows developers to programmatically control webviews in mobile apps. Webviews are essentially in-app browsers that display web content directly within the app. If you are familiar with Puppeteer or Playwright, Pipeable serves a similar purpose but for these embedded browsers, offering granular control over web interactions.

What can you use Pipeable for?

You can use Pipeable to automate web interactions in your mobile app. This can be anything from scraping data from a website, to automating a user’s interaction with a website, to creating a mobile app that acts as an agent on behalf of a user.

You can check out https://github.com/PipeableHQ/pipeable-ios-samples for some concrete examples of what you can do with Pipeable.

Why webviews and Pipeable?

We think that Pipeable and webviews are a great fit for automations for a number of reasons:

- Because webviews are integrated with mobile OS-es, users can log into websites using their preferred mobile authentication workflow (leveraging FaceID, TouchID, etc.) without the need to explicitly share or type credentials. Handling CAPTCHAs, 2FA, etc. is similarly fluid.

- Automations leverage the website’s document object model (DOM) and allow AI agents to do anything that a user can do, even when there is no API or the API is restricted.

- Automations can be executed entirely on the client for better privacy and security. Also, developers can offer an option to continue the session in the cloud using Pipeable Scripting (see below) for better convenience and more flexibility.

Agentic AI

While Pipeable can be used for many things, we are particularly excited about unlocking agentic AI on mobile through the power of webview automation. Specifically the ability to connect to 3rd party websites and perform actions there on behalf of the user, from within a mobile app. This capability paves the way for richer, more dynamic app experiences, turning mobile applications into powerful tools that not only access web information but interact with web ecosystems on behalf of users. We're eager to see the creative solutions developers will build with Pipeable, enhancing mobile app functionality and empowering users.

We have a simple AirBnB booking agent that you can try out to get a feel for this in our samples repo: https://github.com/PipeableHQ/pipeable-ios-samples.

Pipeable Scripting

The final cornerstone of the PipeableSDK is PipeableScript, a runtime environment that allows developers to write their automations in TypeScript/JavaScript, while still enabling execution directly on mobile devices. This has two key benefits:

- You can dynamically load your scripts into your app at runtime, this means that if the underlying website changes and your automation breaks you can simply fix the script and deploy it to your app without going through the full app update process.

- The scripts you write are broadly compatible with Playwright and Puppeteer, this means that you can run your PipeableScript in Playwright or Puppeteer if you want to execute your script on a server. This can be especially helpful for certain types of tasks which are long running or compute intensive.

In closing

Thanks for making it this far! If you are interested in learning more, you can check out out Github repo or try out one of our sample apps. If you want to receive updates about Pipeable, you can sign up on our website. We are very excited about collaborating with folks building Agentic AI on mobile, if this is you, please grab some time on our calendly on our website (https://pipeable.com), send us an email (hello@pipeable.com) or DM us on Twitter (@PipeableHQ).