expo, using salvattore.js. Requires a web server but excellent so far.