Skip to content

Instantly share code, notes, and snippets.

@jpommerening
Created July 20, 2017 10:22
Show Gist options
  • Save jpommerening/12dc01b318d74fd2b301f2b68171cdd2 to your computer and use it in GitHub Desktop.
Save jpommerening/12dc01b318d74fd2b301f2b68171cdd2 to your computer and use it in GitHub Desktop.
Evaluation: what's keeping us from using LaxarJS with something like React Native or Weex

Motivation

React Native and Weex are projects that employ a JavaScript runtime and virtual DOM implementation to control native UI elements (for example UIView instances in iOS rather than <div> elements). These projects enable programmers to use familiar concepts (unidirectional data flow, data binding) and technology (JavaScript, JSX, Vue-Components) to build native mobile apps.

With LaxarJS 2 we dropped many ties to the browser runtime (by dropping Angular JS, introducing adapters, almost pluggable routing) so we might, with some effort, be able to create native Apps with LaxarJS.

This would probably be a rather big project. Let's update this ticket (feel free to edit the description) to keep track of the progress and decisions we make along the way.

Technicalities

Target Version

TBD

It might be possible to do this in a backwards compatible manner, if we create a separate entry-point, laxar-native.js, for native apps. However, since this is a huge feature it could be a good selling point for v3.

Goals

  • Use LaxarJS inside typical React Native and/or Weex apps
  • Develop widgets targeting React Native and/or Weex (via integration technology)

Non-goals

  • Make native apps from existing LaxarJS projects
  • Use existing infrastructure/tooling

Obstacles

  • Navigation: native apps use different navigation concepts
  • Tooling: React Native and Weex build tools don't work that well with webpack
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment