Skip to content
/ itunes Public

🍎🎡🎧 an iTunes clone built with Expo and React Native for iOS, Android, and the Web

License

Notifications You must be signed in to change notification settings

pjnalls/itunes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

icon

iTunes Clone

🍎🎡🎧 an iTunes clone for iOS, Android, and the Web


iPhone demo image Android-phone demo image Web demo image

System Prerequisites

Ensure you have the latest LTS (long-term support) version of Node.js installed on your system.

Recommended installation instructions are available here.

IMPORTANT NOTE: Due to the dependencies included in this project, you must use EAS Build to run this app on iOS and Android devices.

Local Project Setup

Somewhere in your file system, run either

$ git clone https://github.com/pjnalls/itunes.git

if you aren't connect to GitHub with any SSH keys, or

$ git clone [email protected]:pjnalls/itunes.git

if you are.

Next, navigate to the root of the newly cloned project by running the following:

$ cd itunes/

Then, install a node_modules folder for all the project's dependencies:

$ npm i

EAS Project Builds

Ensure the eas-cli is installed globally on your machine:

$ npm i -g eas-cli

Run the following command and follow the instructions in the CLI to create EAS builds for iOS (Apple Developer account needed) and Android:

$ eas build --profile development --platform all

Alternatively, you can build for a single platform at a time as builds may take some time to complete:

Run

$ eas build --profile development --platform ios

to create EAS builds for iOS only, and run

$ eas build --profile development --platform android

to create EAS builds for iOS only.

IMPORTANT NOTE: You'll need to install the new EAS development builds on your phone before you can run the Expo app locally, scan the app barcode to connect it, and run the React Native app from a physical iOS or Android device.

Run iOS, Android, and/or Web Apps

Run the following to run the Expo app:

$ npm start

Then, if you have the EAS development builds installed on your phone, you should be able to scan the barcode that appears and run the React Native app from an iOS or and Android device.

Press w to open the web version of the React Native app in the browser.

NOTE: It's possible to run an iPhone, Android phone, and the browser on the same React Native app instance for cross-platform development. Also, simultaneous, universal HMR (Hot-module Replacement) has been enabled for this app.

References

Helpful react-native-track-player Demo

https://github.com/codezri/react-native-track-player-demo/

#1 Helpful GitHub Comment for Building and Running This App

doublesymmetry/react-native-track-player#2227 (comment)

Another Helpful react-native-track-player Demo for iOS

https://medium.com/@gionata.brunel/implementing-react-native-track-player-with-expo-including-lock-screen-part-1-ios-9552fea5178c

Another Helpful react-native-track-player Demo for Android

https://medium.com/@gionata.brunel/implementing-react-native-track-player-with-expo-including-lock-screen-part-2-android-8987e374f965