Skip to content

Mobile Application to control and synchronise lighting for photography using Bluetooth Low Energy (BLE) devices

Notifications You must be signed in to change notification settings

RealDyllon/LumoSync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LumoSync

A Cross Platform Mobile Application to control and synchronise lighting for photography using Bluetooth Low Energy (BLE) devices.

This is a React Native project, bootstrapped using @react-native-community/cli.

Getting Started

Step 0: Prerequisites

Make sure you have completed the React Native - Environment Setup instructions till "Creating a new application" step, before proceeding.

Step 1: Start the Metro Server

First, you will need to start Metro, the JavaScript bundler that ships with React Native.

To start Metro, run the following command from the root of your React Native project:

yarn start

Step 2: Start your Application

Let Metro Bundler run in its own terminal. Open a new terminal from the root of your React Native project. Run the following command to start your Android or iOS app:

For Android

yarn android

For iOS

yarn ios

If everything is set up correctly, you should see your new app running in your Android Emulator or iOS Simulator shortly provided you have set up your emulator/simulator correctly.

This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively.

Code Structure

Lumosync
|- android/ - Android Native Code
|- ios/ - iOS Native Code
|- src/ - React Native Code
    |- components/ - React Native Components
    |- navigation/ - React Navigation
    |- screens/ - React Native Screens
        |- GroupControl/ - Group Control Screen 
        |- Home/ - Home Screen
        |- PeripheralControl/ - Individual Peripheral Control Screen
        |- Peripherals/ - Peripherals Screen (For debugging)
        |- LogViewer.tsx - Log Viewer Screen (For debugging)
    |- state/ - Zustand State Management
    |- types/ - TypeScript Types
    |- utils/ - Utility Functions

Building Releases

For Android

cd android
./gradlew assembleRelease

For iOS

Use Xcode to build the release.

Troubleshooting

You may need to enable adb reverse if you're using a physical Android device.

adb reverse tcp:8081 tcp:8081

If you can't get this to work, see the Troubleshooting page.

Learn More

To learn more about React Native, take a look at the following resources: