reachliao's Introduction
reachliao's People
reachliao's Issues
Add Alarm screen when current location is near destination
Customisations - Ringtone
- Allow users to select their ringtone
- Use existing ringtones on user's phone or provide a set of fixed ringtones?
Favourites Menu UI
- Design and organise the UI for the favourites menu
Background location tracking
- Application should reliably get GPS location even if app is in background
GPS/Alarm Implementation
- Implement alarm that activates when GPS is near target location
Test build binary for Android/IOS
Status Bar appear blank on release builds
- Bug occurs when tested on physical android device
- App appears fine on simulator and Expo Go client (on physical device too)
- Require more testing
Shift code to components
- Tidy up code by encapsulating relevant code to components to reduce code on App.js
Customisations - Map Style
- Allow users to customise the map
- Default initial region (Let user set their origin country and let the map load initialCamera at their country instead of a fixed location)
- Light/Dark Mode Map (can be configured easily)
Permissions Request Checks/UI
- Request user to give location permission if it is not granted (perhaps a snackbar)
- Warn users the app might not behave properly if permissions are not granted and they still want to set alarm
- Provide in-app disclosure of collecting background location usage to comply with Google Play Console policy
Use Prettier for consistent coding standard
Use Geocoding to set destination coordinates
Customisations Setup
- Setup file/environment to store variables used for customisations
Multiple Waypoints
- Allow users to set multiple waypoints
Integrate ESLint w/ Prettier for code standards
- CI through Github Actions or similar tools to check code before allowing commit
Typescript Migration
- Migrate code to use typescript
Failsafe Feature
Customisations - App Light/Dark Mode
- Allow user to switch between light/dark mode
- Check for consistency in UI
Encapsulate Alarm code outside of App.js
Customisations - Proximity (Single WP)
- Allow proximity to alarm activation to be customised
- Limit to only one destination as of now (but keep in mind to make code extendable for multiple waypoints)
Make use of .env for secrets
- Make .env file to store API keys and utilize it in main code
Add confirmation screen after destination is selected for both long-press and geocode
Program Flow
- User select destination (using geocode/long-press)
- Shift map to destination and indicate where the destination will be set
- Prompt the user to accept/decline the destination
Activate alarm from background
- Alarm should be activated even when app is in background
Add UI to display information when alarm is set
- Distance Remaining
- Cancel alarm button (which will also remove destination)
Improve search bar UI
Customisations - Vibration
https://docs.expo.dev/versions/latest/react-native/vibration/
- Allow users to set 'silent mode' alarms i.e. vibration only mode
- Allow users to customise
vibration strengthand pattern (Edit: expo vibration does not support customising vibration strength) - Create a few prefix vibration patterns
Create basic menu for other features
- User should be able to access a menu to access other features such as customisations
UI/UX Enhancement
Directions - Integration with Map/Alarm
Follow up from #49
- After the user has selected a route from the Directions page, the alarm will be set according to the waypoints in the route
- Should only set alarms for transfers/destinations from transit (ignore waypoints on foot)
Directions - Setup Menu page
Setup menu for users to search directions
Specifications
- The user can input their starting location and end location
- The starting location can be selected manually or obtained from their current GPS
- The program will output the recommended travel routes (via public transit only)
Integration of this menu to the Map/Alarm seperated to another task
Allow users to pinpoint the destination (long-click select?)
Google Maps API Integration
- Display basic interactive map in app
- Integrate Google Geocoding API to convert address string to coordinates
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.