Launch HN: Wolfia (YC S22) – A mobile app emulator you can share with a link
Mobile app development in 2022 is harder than it should be - you can't easily change a line of code, rebuild the app, and have someone on the other side of the world see the result in seconds. Instead of the rapid iterations that web app developers enjoy, mobile app developers are stuck with pushing builds every night and waiting a day for the team to see the new code. That's if they even have a nightly build setup. Most people also only have one phone, so they can never test the Android app if they have an iPhone and vice versa.
We've been developing mobile apps for over 10 years (at Facebook, Wealthfront, etc.). In that time, the tooling has dramatically improved, yet we still found ourselves having to go and install emulators on a PM's laptop and give them commands to copy and paste on the terminal because they didn't have an Android phone. Or we would have to procure test phones and wait for a build to be pushed. We’re building Wolfia to finally make this process seamless.
Wolfia lets developers send a link to an APK (an Android binary) that's running on an emulator accessible via the browser. You can then play with the app without the need for a physical device. This dramatically shortens the feedback loop and completely transforms the dev cycle: from days to hours or even minutes.
Product managers and designers can use it to check that a new feature is being built up to their specs. Developers can use it to check if the code is running correctly. Founders, user researchers and salespeople can use it for interactive demos of the product.
We host headless (without GUI) Android emulators with hardware acceleration running on AWS bare metal instances to get high performance. We use WebSockets to make a two-way connection between the browser and the emulator through ADB (Android Debug Bridge). The emulator's GUI is displayed on the browser via an H.264 video feed, and we relay the user's touch events back to the emulator. We use WSS to make this secure.
Try it for free at https://www.wolfia.com! (you can try a demo - we used Materialistic, an open source HN app - or sign up for free and upload your own app)
We would love to hear your thoughts, ideas and feedback!
74 comments
[ 3.0 ms ] story [ 128 ms ] threadalso I don't understand the 15 minute session timeout
what happens when the time runs out?
What happens if a user needs to share the emulated app with a colleague or prospective customer who requires accessibility tools such as TalkBack or VoiceOver? Can you run tools like that in the emulator alongside the app? I'm guessing this would be straightforward for Android, but maybe not so much for iOS.
For iOS, we plan to support similar features and we will explore if we can use the Accessibility Inspector tool to support VoiceOver.
What are your distinguishing selling points (besides cost) compared to Amazon Device Farm[0]?
[0] https://aws.amazon.com/device-farm/
Since I’m mostly an Apple dev, when do you see yourselves supporting iOS as well? I’ve seen other companies try the “Mac/iOS in the cloud” thing and I’ve yet to see it work perfectly so I’m curious what your vision is to make it a great experience.
Also used a TCP ping app to check what seems to be the demo server - node1.wolfia.com? Average was around 160ms, ranging from 70 to 300ish, so I guess that was the real issue!
I'm located in UK and using a 4G network. Might try it again tomorrow from work and see how it compares.
Our vision is to have a stable link for your app that links to the latest version of the app so that people can quickly find and interact with it.
That doesn't ring true. TestFlight / Play Store uploads are typically available within 15 minutes.
Still, it's nice you're solving deployment overhead. In particular, my team needs side-by-side installs of the live/prod build and dev/staging build.
It's double the headache to stand up a store listing and comply with policy changes, just for an internal distribution channel. Save me.
The other 20% is stuff that doesn't work in an emulator. Usually Apple, certificates.
It's enough of a minefield that QA means real devices, unfortunately. Used phones are vastly cheaper than "false alarm" bug reports.
> in our experience, nobody wants to push to those platform that frequently, and force many upgrades of the app every day, so instead they do nightly builds at best
If my team's big enough for daily builds, we have continuous deployment (Fastlane or similar). Strictly speaking, the pain is the build step (slow; can be flaky), not pushing the artifact.
I hope this is helpful. Feel free to dig deeper, I'll keep an eye on this thread.
For the deployment, wolfia allows you to share builds before they are merged and solicit feedback from your team earlier. If you think about it, the feedback loop is much faster in practice than waiting for deployment and then getting the feedback. However, I do agree that the build step is a pain! Our vision is to bring the same experience web developers have to mobile essentially, so we'll take a stab at it in the future :)
-Share a browser session; someone can log in and let someone else do stuff without having to share their password.
-Burner phone to install garbage, or untrusted apps on that "you only need once" or that you just need to use to screenshot a coupon etc.
-Burner phone to access Facebook or TikTok with, with no private data risk
-US IP address to get around geoblocking
Tangent: IIRC Pokemon GO (and probably other more professional usecases for GPS spoofing) mitigates spoofing via a variety of techniques
I think it would be useful to be able to use the keyboard to input text.
Unlike in the IOS world, the Android market is so saturated with devices, you may not know how your app (camera feature for example) will behave on a Tecno phone.
When I last had a need for something like this confidentiality was a major concern (it was at a small-ish but publicly traded company). Not quite at the level of needing signed contracts, but at the same time something more than a random web service someone unnamed threw together would be required.
I notice that you haven't put your names and backgrounds on the site - that would help in building credibility. Demonstrating the YC backing would also help.
Agreed with building credibility. We'll add our names and backgrounds along with the YC backing on our website soon.
Also, we plan to support an on-premises option in the future.
FYI: the first thing I did was click your demo app and try to read this article. I couldn't. Maybe this is because of your launch traffic spike but you should know.
https://www.youtube.com/watch?v=8wfG8ngFvPk
(I'm not using the term lightly here - we're multiple times faster and more stable than Firebase Test Lab and you could be running your full test suite in a couple of minutes, instead of hours)
I smell AWS Lambda :D
Would you go to a dry cleaner that charged you $50 a shirt because "I fly the shirts to my brothers shop on the other coast to be cleaned"? Of course not.
I can think of no reason why you need to be on AWS vs a dedicated server or a stack of used Dell servers in your garage.
https://web.archive.org/web/20121203101645/https://www.kickf...
I clicked on it first before I read your description here.
Looking at your website, I had no idea what you were doing.
I don't even see "mobile" mentioned anywhere.
The headline says "Turn your app into a link"; I skipped over "APK", and read "get a shareable link to an interactive version of your app"
Um, isn't my app already interactive?
I scrolled through the rest of the page, and still had no idea what you did.
Then I came back here, clicked on "comments", and read your description.
Which was great. Oh, you give a link to a -> mobile app -> emulator -> which can be easily tested without having to get it on an actual phone.
If you took your description here and put it on your home page, it'd be much better :-)
Something to keep in mind in case you notice more people bouncing off your register page more than you'd normally expect.