Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zetachang/opal-native
React Native in Ruby
https://github.com/zetachang/opal-native
Last synced: 5 days ago
JSON representation
React Native in Ruby
- Host: GitHub
- URL: https://github.com/zetachang/opal-native
- Owner: zetachang
- License: mit
- Created: 2015-04-05T12:45:02.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-08-23T08:27:28.000Z (over 9 years ago)
- Last Synced: 2024-08-16T19:53:00.357Z (4 months ago)
- Language: Ruby
- Size: 784 KB
- Stars: 400
- Watchers: 13
- Forks: 13
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-react-native - Ruby React Native (via Opal) ★391 - Use Ruby for building React Native apps (Utilities / Other Platforms)
- awesome-react-native - Ruby React Native (via Opal) ★391 - Use Ruby for building React Native apps (Utilities / Other Platforms)
- awesome-opal - Opal Native - React Native in Ruby (Uncategorized / Uncategorized)
- awesome-react-native - Ruby React Native (via Opal) ★391 - Use Ruby for building React Native apps (Utilities / Other Platforms)
- awesome-react-native-ui - Ruby React Native (via Opal) ★382 - Use Ruby for building React Native apps (Utilities / Other Platforms)
- awesome-react-native - Ruby React Native (via Opal) ★391 - Use Ruby for building React Native apps (Utilities / Other Platforms)
README
# Opal Native - React Native in Ruby
> JavaScript is an implementation detail.
>
> -- [Why React Native Matters](http://joshaber.github.io/2015/01/30/why-react-native-matters/)![Screenshot](screenshot.png)
## Motivation
To provide a Ruby-friendly tool chain (this doesn't require node / npm) and wrapper over [React Native](http://facebook.github.io/react-native/) API. :sparkling_heart:
## Dependency
* [Opal Ruby](http://opalrb.org) is used as Ruby transpiler to transpile your Ruby code into JavaScript.
* [react.rb](https://github.com/zetachang/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 (xc**Workspace** not xcode*Proj*!)
5. `bundle exec thin -R config.ru start -p 8081` to start packaging server
6. Build & RunNote: 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](http://facebook.github.io/react-native/docs/debugging.html)## 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 :wink:.
## Contact
[David Chang](http://github.com/zetachang)
[@zetachang](https://twitter.com/zetachang)## License
opal-native is available under the MIT license. See the LICENSE file for more info.