Presented at geneva.rb, The Geneva Ruby Meetup, on 10 January 2024.
- Clone the repo
- In the
railsfolder:
- yarn
- bundle install
- rake db:create:seed
- bin/dev
- Open the ios folder in xcode and run
- I'm not an expert on this, have not yet built a real app and deployed it to the app store
- Have read and played around with many tutorials etc. Some great resources are:
- Turbo ios wraps the iOS Webview in a native app
- Strada bridges native components such as buttons to html / JS
- This existed before Strada via manual config
- Strada will likely be improved to reduce configuration code
- TurboNavigator helps with modals and will be upstreamed to Turbo iOS
- Turbo Native iOS apps are being accepted to the Apple App Store, although it is recommended to include some native components, such as a tab bar or push notifications. If it is only wrapping a webview it will likely be rejected.
- Once the app is submitted to the app store, it can be changed without a resubmission
- An alternative to ReactNative etc: just code one app and progressively enhance it to be more native.
- An understanding of how iOS apps are built is needed, you DO need to know how to code a basic iOS app.
- Coming from Rails, Swift and iOS doesn't have the same opinionated approach, so the different tutorials all do it differently.
- Still a lot of boilerplate and configuration, but this is changing.
- I played around a bit with Android, and it's doable, but not something I would want to do as a Hobby.
