# Tell: elm-native-expo-counter upgraded to React Native 0.55 / Expo 27

**URL:** <https://discourse.elm-lang.org/t/tell-elm-native-expo-counter-upgraded-to-react-native-0-55-expo-27/1374>\
**Category:** Show and Tell\
**Created:** [June 8, 2018, 11:31am UTC](https://discourse.elm-lang.org/t/tell-elm-native-expo-counter-upgraded-to-react-native-0-55-expo-27/1374 "2018-06-08T11:31:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![akavel](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.elm-lang.org/akavel/32/943_2.png) [@akavel](https://discourse.elm-lang.org/u/akavel)\
**Post date:** [June 8, 2018, 11:31am UTC](https://discourse.elm-lang.org/t/tell-elm-native-expo-counter-upgraded-to-react-native-0-55-expo-27/1374/1 "2018-06-08T11:31:40Z")

</div>

For anyone interested, with [help from nateable](https://github.com/ohanhi/elm-native-ui/issues/98), I’ve just managed to upgrade the [opsb/elm-native-expo-counter](https://github.com/opsb/elm-native-expo-counter) project to the newest React Native 0.55 / Expo 27, and published the tweaked version at [akavel/elm-native-expo-counter](https://github.com/akavel/elm-native-expo-counter).

## Wut is this?

The project is a simple example of using Elm with [Expo](https://expo.io/), which allows to build mobile (Android/iOS) apps with Elm, without installing Android SDK/iOS equivalent. Expo is a “stub” Android/iOS app, which exposes many platform APIs to a JavaScript engine. Those then, via React Native bindings, are exposed to Elm. The project is based on [ohanhi/elm-native-ui](https://github.com/ohanhi/elm-native-ui).

## Important notes

- The project is still at alpha/experimental stage, as it was before.
- I only upgraded [ohanhi](https://github.com/ohanhi)’s and [opsb](https://github.com/opsb)’s projects to work with newest RN/Expo. I don’t really understand what’s going on underneath, neither claim to be now an active maintainer of any of the projects. That said, I’d like to try using them for some apps, so I’m at least hoping to slowly hack on them further and maybe learn something. Any help and explanations appreciated!
- Big thanks to [nateabele](https://github.com/nateabele), who miraculously published a [crucial piece of his own work on upgrading elm-native-ui to RN 0.55](https://github.com/ohanhi/elm-native-ui/issues/98) at exactly the time I needed it and by luck accidentally stumbled upon it. I would most certainly fail if not his sudden _deus ex machina_ post out of nowhere just an hour before I had to exactly copy-paste his nontrivial tweaks into my fork.
- The fork of elm-native-ui I use in this project has a [somewhat ugly hack](https://github.com/akavel/elm-native-ui/blob/885a6479b5d803ae46faef0a130dea2bfdca8e2f/src/Native/NativeUi.js#L1-L2) in the “native” (JS) code, which makes it easier to embed it as a subdirectory, and properly see any errors in it. Similar hacks would be needed in the remaining .js files if you need to use corresponding modules.
  - I would **GREATLY APPRECIATE** if someone could help me how to properly remove this hack. I wish _akavel/elm-native-ui_ could be used in projects not named literally `user/project`, and at the same time any Elm errors in it would not result in the super unhelpful in this case “[letting too much stuff through](https://stackoverflow.com/a/49711559/98528)” error message when compiling with `elm-make` (as happened to me when I tried to use _elm-github-install_ a.k.a. _elm-install_). Sorry if that request is hard to understand ☹ hope someone knows what I’m talking about…

---

<div class="post-metadata">

**Author:** ![system](https://canada1.discourse-cdn.com/flex035/uploads/elm_lang/original/1X/50a05e53677a2c3b47776d7abd0f113eb50193a1.png) [@system](https://discourse.elm-lang.org/u/system)\
**Post date:** [June 18, 2018, 11:42am UTC](https://discourse.elm-lang.org/t/tell-elm-native-expo-counter-upgraded-to-react-native-0-55-expo-27/1374/2 "2018-06-18T11:42:42Z")

</div>

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.
