App for FBLA-PBL App Design 2019-2020
Creators: Ethan Schnathorst and Evan Sonin
We used a mobile app development framework developed by Facebook called React Native to create this app. React Native allows for the creation of native mobile applications across platforms while sharing over 70% of the codebase. It utilizes a mixture of JavaScript (using the React.js library) and native code (Swift/Objective-C for iOS and Java/Kotlin for Android). Countless popular mobile applications have been developed using this framework, such as Discord, Instagram, Facebook, AirBnB, and UberEats.
To install this app on Android, download the .apk file to a compatible Android device (such as the Google Pixel series) and run. Unfortunately, although this works on iOS, Apple requires a $100 fee annually (Apple Development Program) to compile the app into an iOS standalone package. The Android standalone version (.apk file) works just as well, though, since Google doesn't charge anthing to compile Android apps.
To install this app on iOS, download the Expo app on the Apple App Store. Then, open a web browser and navigate to https://exp.host/@wackywolff/ee-fbla-app. You should be directed to a web page with information on the project. Locate the button that reads, "Open project using Expo" and tap it. The device should ask you if you want to open in Expo. Tap "Open".
This app should work on both iOS and Android, although it was designed for iOS so it may run more smoothly and look slightly better on iPhones than Android devices. However, this app is perfectly capable of running on both platforms, as well as tablets.
This app also has the ability to adapt to the color scheme of the device it's being run on (i.e. dark mode or light mode), but a reopening of the app is required for the changes to take effect. Also, white mode looks much better than dark mode.
The login screen detects whether a user is a guest (i.e., username is 'guest'), or user (anything else, essentially). The home screen looks different for the different levels. A guest sees an intro about FBLA, and a user sees the attendance information. As of now, the login screen isn't meant to be super secure, more just convienent and useful.
Attendance is taken by scanning a QR code which links to a google form. The previously filled out forms can be viewed under the 'Attendance' page of the app. Miscellaneous pages are under the 'Misc' tab, including a sign out button to test different user privileges.