Mobile SDK
About
The Thought Industries Mobile SDK is a starting point for creating your own mobile app powered by the Thought Industries APIs. The Github repository for the Mobile SDK can be found here.
Features
The Mobile SDK is a fully native solution built with React Native, enabling support for both iOS and Android platforms. It does not rely on iframes, ensuring smooth performance and a true native user experience.
Out of the box, the SDK allows users to:
- Sign up and authenticate
- Access and browse available courses
- Watch videos and read articles
- Download articles for offline reading
- View their enrolled courses and explore the course catalog
The Mobile SDK is designed as a reference implementation—a flexible starting point for building your own custom mobile application. It does not include every capability of the Thought Industries platform by default.
As a developer, you are free to extend and tailor the experience to your needs using Thought Industries’ full suite of REST and GraphQL APIs, as well as native mobile features provided by the underlying platform.
Getting Started
Requirements:
- Expo Go
sudo npm i -g expo-cli
iOS Simulator
- Documentation to setup iOS Simulator.
Android Emulator
- Documentation to setup Android Emulator.
Installing Locally
There is also a video installation guide available here.
- Clone the repository:
git clone https://github.com/thoughtindustries/mobile-sdk
- Install packages:
cd mobile-sdk
npm i
- Run locally:
npm run start
You will be prompted for your:
- instance URL
- instance API key (found in your instances security settings)
- and instance nickname.
These values will be used to generate and store your environment variables.
Once the Metro Bundler has started, you will have the options to scan the QR code to run the application on your mobile device, run the application on an iOS simulator, or run the application on an Android Emulator.
To select a specific iOS device press Shift + i and to select a specific Android Emulator press Shift + a.
Contributions
The github repository for the Mobile SDK is open source and accepts contributions! If you would like to add some additional functionality, please submit a PR for review!
Report Bugs and Issues
If you notice any bugs or issues with the Mobile SDK, please report them in our Developer Discord or open up a pull request / issue.