Skip to content
Create React Native apps in Scala with Scala.js, Slinky, and Expo
Scala JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets
project
src/main/scala/hello/world
.gitignore
.watchmanconfig
App.js
README.md
app.json
babel.config.js
build.sbt
fastopt-noparse.js
metro.config.js
package.json

README.md

Scala.js + Slinky Expo Template

This template sets up a simple React Native application written in Scala through Scala.js, Slinky, and Expo.

Installation

Install the Expo CLI:

$ npm install -g expo-cli

Use the template

$ expo init --template expo-template-scala

Building Apps

Once you've created your project, first compile your Scala code to JavaScript by running

$ sbt fastOptJS

Then, launch the app with Expo

$ npm start

Production Bundles

To create a minified app, first build an optimized Scala.js bundle

$ sbt fullOptJS

Then, go to App.js and uncomment module.exports = require("./target/scala-2.12/app-opt.js").app; in order to enable the production bundle. Finally, switch Expo to production mode to load your production app.

Ejecting

If you need to develop your app without depending on Expo, you can eject at any time by running npm run eject. This gives you the option to either eject to a "bare" project that uses React Native's build tooling or to an unmanaged ExpoKit project that still uses Expo but lets you add in custom native dependencies.

You can’t perform that action at this time.