Skip to content

zetachang/opal-native

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
app
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Opal Native - React Native in Ruby

JavaScript is an implementation detail.

-- Why React Native Matters

Screenshot

Motivation

To provide a Ruby-friendly tool chain (this doesn't require node / npm) and wrapper over React Native API. πŸ’–

Dependency

  • Opal Ruby is used as Ruby transpiler to transpile your Ruby code into JavaScript.
  • react.rb is a React.js wrapper providing basic DSL support in Ruby.

Usage

  1. Clone or download this project
  2. bundle install
  3. bundle exec pod install to install iOS dependency
  4. open SampleApp.xcworkspace to launch Xcode (xcWorkspace not xcodeProj!)
  5. bundle exec thin -R config.ru start -p 8081 to start packaging server
  6. Build & Run

Note: Switch port other than 8081 is not allowed currently.

Debug

  1. Ctrl + Command + Z to toggle dev menu, and select "Enable debugging".
  2. Open http://localhost:8081/ in Chrome or Safari to debug in inspector (haven't test in Firefox yet)
  3. For details, see Debugging Tutorial of React Native

TODO

  • Source map is broken
  • Publish as a gem
  • Add project generator or provide Xcode template
  • Rewrite the original Movie.app example

Contributions

This project is currently in proof of concept stage, so discussion, bug report and PR are really welcome πŸ˜‰.

Contact

David Chang @zetachang

License

opal-native is available under the MIT license. See the LICENSE file for more info.

About

React Native in Ruby

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published