77 comments

[ 3.7 ms ] story [ 129 ms ] thread
Seems to be down.
Our mac mini build server is working through the queue. Takes about 30 seconds to build each app.
I meant your site is down, at least in Firefox. Looks like a certificate problem. http://imgur.com/k5AEzvD.png
Hmm, you must have hard fail turned on for certificate revocation checks. Not sure why our OCSP stapling seems to have problems. What OS and Firefox version are you using?
It fails here with Firefox 31.0a2 (Aurora) on Ubuntu.
Same with me - Aurora (31.0a2 (2014-05-27)) on OS X.
We cleaned up our OCSP stapling config. Can you try again?
Does it make an actual native app or just a wrapper around a web view? I have a couple of (Android) apps that I use that are clearly just a wrapper and it's really annoying.

1) The back button always exits the app instead of going back a screen as would be expected.

2) Switching to another app and coming back causes the app to reload rather than staying on the screen it was on when I switched out.

Unfortunately, phonegap (and cordova) don't make these work by default, and instead make you implement them yourself. Which very few developers get around to doing.
We use webviews, but try to intelligently integrate them into the app.

Things like back button, transitions, caching, and offline mode are designed to work automatically w/ little or no configuration.

Out of curiosity, how hard is it to build something that could parse HTML markup and some CSS stylings and convert that into native views?

Assume that the HTML markup and CSS is all done as per your documentation, so that the parser works as expected every time.

Almost impossible in an automated fashion.

You can extract all of the data but it's very hard to know what links are supposed to do, how pieces of content should be presented, etc.

What if there was a standard created for the markup, so that the parser would know what the links were supposed to do and how the content shoud be presented, because there would be structured data everywhere specific to the parser?
I immediately thought about that after posting, but in reality markup is a clunky and expensive way to dictate this and it would create a lot of waste for something that would be used infrequently.

An interesting idea that comes to mind is the concept of a Mobile Stylesheet / .mss file that would define elements by ID / class and dictate what those elements would represent in a mobile UI. Then you wouldn't have a bunch of needless data-mobile-intent="blah"

That does sound like a good idea, definitely preferable to keep the markup a bit cleaner.

Honestly, I don't know if I care as much for a web-view based product, as Phonegap/Cordova have already been serving that purpose (at least for me), but what you've mentioned, if implemented, would definitely be something I'd use.

As @nkozyra says, understanding what all the links do is hard, however there are automated ways of converting common types of webpage layouts into structure data for native presentation.

For example, our startup (shameless plug) utilizes a computer vision technology to automatically extract structured data from articles, images, products, and videos, etc: http://diffbot.com/products/automatic/. These can then be used to present native-experience views.

Out of curiosity, I'd love to learn more about your stack. Any blog posts handy?
C++/Java/Python and turtles all the way down.

More seriously, as a more researchy/deep-tech startup, most of our stack is homegrown, to address the very specific needs of web-scale machine vision.

I was actually just looking at your startup for an application I'm building. Nice to see you on HN! Do you have an email I can use to ask you about cross-promotional opportunities?
The only reason you are being bitten by those two points is because the developer is being lazy and neglectful of user experience.

Making those two issues dissappear takes about 6 hours of developer time.

Nice work, but there is a huge problem and I really hope you fix it ASAP or else I'm SOL for updating the app I just released with this.

Apparently the version numbers are not being increased for each successive build, and you really need to do this. Why? Because I can't even update my app by editing the source code, changing the version number (which is already kinda annoying to have to do) and uploading the new apk release due to it not being signed with the same certificate you guys use....

Thanks for the feedback, and I'm glad to see you published an app! Automatically incrementing the version number is something we are going to do. Emailing hello@gonative.io is the best way to reach us.
Fixed, the Android manifest versionCode now increments with each build.

We do not include the signing key in the source code download, but you can email us to get it.

I'm new to native apps and I've been struggling to find a solution to get my HTML5 game on the app store. This is absolutely incredible. Took 30 seconds and worked flawlessly! THANKYOU!
Did you try PhoneGap? If so, what failed? I'm in a similar position as you.
Link us to try out your game!
Crashes Firefox on OSX.
We're spinning up a few more build servers. Build times should get back to <1 minute in a bit.
Is it possible to use getUserMedia on iOS with your app?
What's the difference from PhoneGap?
Looks interesting! I guess you're running this as a "spin off" and make money with supporting native-unexperienced app developers in going native?
Shows this when I open the link: Error: EMFILE, open '/home/gonative/launch2/app/index.html'
I tried it out and for those who are asking for the difference between PhoneGap and other tools is that this takes your website, adds native components like navigation for menus that it detects and login capabilities. For example in about 10 minutes I "built" a Twitter app using the twitter mobile interface. It has native login/signup, a sidebar for accessing elements, and native search. I don't know how well non-mobile interfaces will translate over - but the native components make it useful.

This is pretty good and it's really what building a hybrid app should look like. There's probably a lot of areas it can be improved.

What exactly is this looking for in terms of creating the sidebar? Loading your android source code and going to your site nothing appears in the navigation menu.
for the sidebar in particular, it's looking for menu_default.json. hope that helps!
You're console.logging everyone's app settings and email after they've created an app.

main.js:1480

We pushed a fix ~10 mins ago. All good now. Really sorry.
(comment deleted)
Seems our site is lagging a bit w/ the traffic. We are working on spinning up a few more node instances.
(comment deleted)
Really interested to see the end result. I submitted and received the "Success" notice about two hours ago - how long should I be expecting before having access to a build?
Normally ~1 minute, but our build queue got a bit out of hand. We've fired up a few more build processes and are working down the queue. You should get an email shortly. Sorry for the delay!
Cool project. Definitely useful as a starting point into more advanced customization. Thanks!
Firefox OS, we need you to stop the "native" crazyness.
Because everything can fit in the hypertext model?
Really curious about how app.io is able to do this so smoothly, seems like they are running iOS virtualization over canvas vnc. It's so freaking smooth I feel like I'm using an actual app.

I would love to know how they are able to pull this off. I tried the ipad as well and it's smooth! Very little lag.

Created duplicate navigation. Extremely limited navigation options. Scrolling is sketchy, when scrolling ends shows random item from the list not the one the scroll stopped at. Not ready for mainstream yet.
thanks for the feedback. one thing to be aware of is that the apps run much faster smoother on device versus in browser simulator. we'll also be supporting more navigation options, as well as other native components, going forward.
This is certainly interesting, but it duplicated my own nav on my webpage. Don't know how it could be smart enough to detect that even though I have a very standard setup. In any case, I suppose it would be good for a quick and dirty start to your app and you could flesh the rest out later? I wonder who will actually end up using this for real.
what we normally do when using native sidebar navigation is hide the web navigation w/ css - there's a configuration option "Check here to support custom styling" where you can set:

nav{ display: none; }

Apple have a rule against making apps that "are simply websites bundled as apps". You should probably mention that somewhere on the website to avoid having a bunch of people pay for a developer account only to get their generated application rejected by Apple.
There are tons of web-view based apps in the App stores. Phonegap bases their entire business on a similar concept.
There's a difference between a full-featured multi-screen native-feeling app implemented in a webview with Phonegap and a wrapper around an existing web site. You can do a lot of interesting things in a webview and come, for some purposes, reasonably close to a native look and feel. The previous comment was right to warn about Apple's policies.

(I spent some time playing with Phonegap but it was two years ago and a simple app took 30 seconds to launch on an iPhone 3GS. Probably significantly better now, and faster as hardware has improved.)

Declan has the right idea.

Phonegap isn't about merely packaging a website as an application. It's about using front-end web technologies to build applications. There's no rule against that, even if it's possible to use it to break other rules.

What there is a rule against is simply packaging a website up as an application. That's what this service does.

While you may get away with it, there's a strong chance you won't. It's only fair to warn people before they spend money.