
Show HN: Node-android – Run Node.js on Android - sequoiar6868
https://github.com/getICO/node-android
======
unit91
Serious question: what sorts of things would a person do with this?

Not throwing rocks, this is a question based in my own ignorance. I know what
Node is, but I don't use it and I'm not an Android dev. Thanks!

~~~
m_mueller
What I’d do is running a full blown database application on the device.
Couchbase Lite can do that as an example - replicate to a Couchbase server and
allow offline access to data and indices. If your server part is Node.js based
you should be able to have the whole thing running offline on devices.

Why? I’m Swiss. We drive a lot of trains and they enter a lot of tunnels. Or
on the plane. Or on a mountain. Imagine you can just keep on editing all your
business data and sync the delta once you get a connection.

~~~
stephengillie
You may be interested in a new way to develop web applications that I have
been developing. An entire site is represented in JSON, and pages are built by
Javascript in the browser. This greatly reduces server calls, making it much
faster as well as largely working offline.

The site is in late alpha:
[https://www.sparational.com/](https://www.sparational.com/)

(If you goto the Login screen and enter an unused username and password, it
will create an account for you.)

~~~
tazard
On my phone, it just says application error

~~~
stephengillie
Which browser? I've tested on desktop Chrome, mobile Chrome, and mobile
Firefox.

IE and Edge aren't currently supported, and might never be.

~~~
tazard
I tried Firefox Focus, Firefox Mobile, and Chrome. Just tested again and it's
working now though. Looks interesting!

------
mikece
If the purpose is to just run JavaScript code on Android outside of a browser
context, React Native and NativeScript have been doing this for a while.

If the purpose is to run JavaScript functions as background services this is
somewhat implemented via Service Workers in Progressive Web Apps.

I don't think there is any way (currently) to register a JavaScript
function/library as an always-on server process. I don't see why this would be
unsafe or particularly undesirable unless there is something computationally
intensive happening.

------
lai
This is cool, but Termux gives you this and more.

------
rhacker
This looks like a NodeJS implementation written in Java (I'm guessing from a
dead-push to make Java's JS VM capable of running NodeJS APIs - and note that
its compatible with Node 0.10.x - very oldish) Still would likely fill a niche
where previously not possible.

------
andrewguenther
"Run Node.js on Android by rewrite Node.js in Java"

It also hasn't been meaningfully updated in two years. I don't think that this
is really useable.

------
antoniuschan99
I was able to get Node running on both Android and iOS using this library:
[https://github.com/janeasystems/nodejs-
mobile](https://github.com/janeasystems/nodejs-mobile)

Here's the writeup:

[https://medium.com/@tuffluver/control-an-industrial-robot-
wi...](https://medium.com/@tuffluver/control-an-industrial-robot-with-your-
iphone-or-android-88b5dd300ee1)

------
jimpick
Very nice! I've been playing with [https://github.com/janeasystems/nodejs-
mobile](https://github.com/janeasystems/nodejs-mobile) to get the Dat project
to run on Android and iOS. This might be another way to do the same thing on
Android!

~~~
Hydraulix989
Your linked project makes a lot more sense since it is a native NDK port
instead of a complete rewrite/re-implementation in another programming
language.

------
hyperpallium
termux (on android) has nodejs

    
    
      $ apt search nodejs
      nodejs/stable 8.11.2 arm
        Platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications
    

disclaimer: I haven't used it

------
bitwize
Great hack, but what does it give me that Node under Termux doesn't?

~~~
z3t4
You could probably packages a Node.JS app with this and release it as an
Android app. I think this project need some examples.

------
JosephRedfern
I'm probably being blind here, but why would you need to re-write node.js in
Java in order to be able to run it under Android? Why couldn't this be
achieved through JNI (or similar)?

------
naoru
I used an old Android phone with Linux Deploy to run Node with MongoDB around
3 years ago. Now Termux allows to do basically the same.

------
sequoiar6868
the initial purpose is to run http over udp with nodejs on Android for p2p web
service. I have spent years of effort on it, but I feel tired now. anyone
interested in it, can fork and continue on it. thanks.

------
EGreg
Do we have one for iOS?

I would like to run my own web servers in Cordova!!

~~~
samschooler
[https://github.com/janeasystems/nodejs-
mobile](https://github.com/janeasystems/nodejs-mobile) Is the most promising
project right now! Secure Scuttle Butt is using it to get running on mobile.

------
augbog
Why link to a fork?

------
philliphaydon
Now we just need android phones with 32gb of ram.

