patrickdemers6 / amesride Goto Github PK
View Code? Open in Web Editor NEWTrack your bus, frustration free.
License: GNU General Public License v3.0
Track your bus, frustration free.
License: GNU General Public License v3.0
Show the static GTFS schedule so riders can plan their trip further in advance.
If a user opens the app out of Ames, it is useless to have the map move to them. Setup a rule to not move the map to the user if they are outside Ames.
Here is the function that automatically moves to the user's location on Map load.
AmesRide/src/components/Map/Map.js
Lines 56 to 65 in 7231be2
West longitude: -93.79180211954629
East longitude: -93.50245309137533
North latitude: 42.11249786499128
South latitude: 41.94664427464395
Tapping on a stop occasionally crashes the app. The behavior is not consistent or reproducible, but has been observed on multiple stops.
Often times, bus users follow a schedule each week. Allowing the user to configure a default route to be shown based on their location and/or time of day would improve user experience.
The user should be able to specify multiple settings:
"I want to get on 21 Cardinal whenever I am at my apartment at Freddy Court."
"I want to see 1 Red West when I am near student services on Wednesdays from 10:00am - 12:00pm."
Add the ability for a user to subscribe to a notification X minutes before a bus arrives.
The app shows upcoming arrivals at Friley.
The app crashes.
Add an option to the map that shows all stops. This way the user can find routes near them, no matter where they are in Ames.
Reported by Google Play Store crash reporter.
Looks similar to:
expo/expo#17426
If you are unsure what bus you need to take, the ability to see all routes and stops on the map at one time would be useful.
When the user opens the application, all routes are flashed temporarily before switching to favorites. Nothing should be shown before making the decision.
When marking a route as favorite, it can be difficult to press it. The touchable area should be larger.
The app randomly breaks and gets stuck on loading screen. Clearing app data seems to fix the issue.
"When opening the app, it loaded to the map screen like normal but then jumped back to the loading screen."
Affected version: 1.2.0
Anyone able to reproduce, please share!
Test the current user experience when using TTS and optimize the experience.
When people click to email from the app, %20 is included in the subject and isn't automatically converted to a space.
Prior to selecting a route, the map is buttery smooth. Once a route is selected, it is glitchy.
Reproduced on a Galaxy S10+.
A few things have changed since last updating app screenshots. They should be updated in the Readme file and the Play Store.
The minutes until a bus arrives can differ from the time shown due to hidden seconds. The number of minutes until a bus arrives should be shown based on the expected time of arrival.
On Brows South, the route is different on the weekend.
When a user clicks Brows South, it should show the proper map of the route, instead of the weekday route.
This will require determining the correct pattern to follow when showing a route.
The app shows upcoming arrivals at Friley.
The app crashes.
Now that #89 is in, screenshots need to be updated in the README and for the app stores.
If you hit the home button, wait 30 seconds, then switch back in, the vehicles are outdated for up to 5 seconds. When the app is switched back into, it'd be great to automatically refresh before the 5 second interval.
Depending on internet connectivity and speed, the routes can be slow to load.
When viewing upcoming arrivals for a certain stop, add a user configurable option to show only arrivals from favorite routes.
When looking at the list of upcoming arrivals, there can be many irrelevant buses shown. This allows the user to focus on what is important to them - finding the bus that meets their needs.
A small icon is shown on the drawer that appears when a stop is selected. It allows the user to toggle between showing all arrivals and only those for their favorite routes.
There needs to be an easy way to display a banner to users.
Context: The company contracted to monitor CyRide busses is currently experiencing an outage. It would be great to be able to show a short message to users explaining why the app is not working.
A favorite stop would display on the map, even without a route selected.
The app was published to the Play Store on October 1.
https://play.google.com/store/apps/details?id=com.demerstech.amesride
Currently, the app works fine but an exception is thrown internally.
Possible Unhandled Promise Rejection (id: 0):
Error: Not authorized to use location services.
Seeing a number of occurrences of the following error:
Exception java.lang.RuntimeException:
at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4657)
at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:4690)
at android.app.servertransaction.ResumeActivityItem.execute (ResumeActivityItem.java:52)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:176)
at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:97)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2267)
at android.os.Handler.dispatchMessage (Handler.java:107)
at android.os.Looper.loop (Looper.java:237)
at android.app.ActivityThread.main (ActivityThread.java:8167)
at java.lang.reflect.Method.invoke
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:496)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1100)
Caused by java.lang.reflect.InvocationTargetException:
at java.lang.reflect.Method.invoke
at expo.modules.ReactActivityDelegateWrapper.invokeDelegateMethod (ReactActivityDelegateWrapper.kt:237)
at expo.modules.ReactActivityDelegateWrapper.onResume (ReactActivityDelegateWrapper.kt:126)
at com.facebook.react.ReactActivity.onResume (ReactActivity.java:58)
at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1454)
at android.app.Activity.performResume (Activity.java:8111)
at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4647)
Caused by java.lang.NullPointerException:
at java.util.Objects.requireNonNull (Objects.java:203)
at expo.modules.location.LocationModule.handleForegroundLocationPermissions (LocationModule.java:844)
at expo.modules.location.LocationModule.lambda$requestForegroundPermissionsAsync$2$expo-modules-location-LocationModule (LocationModule.java:195)
at expo.modules.location.LocationModule$$ExternalSyntheticLambda17.onResult
at expo.modules.adapters.react.permissions.PermissionsService.createListenerWithPendingPermissionsRequest$lambda-22 (PermissionsService.kt:271)
at expo.modules.adapters.react.permissions.PermissionsService.$r8$lambda$Xtr9_3ibuLGU1WXILaGyswj4Ze0
at expo.modules.adapters.react.permissions.PermissionsService$$ExternalSyntheticLambda0.onRequestPermissionsResult
at com.facebook.react.ReactActivityDelegate$2.invoke (ReactActivityDelegate.java:198)
at com.facebook.react.ReactActivityDelegate.onResume (ReactActivityDelegate.java:123)
Show a tooltip when a button is held down.
The main button I'm thinking this is needed for is the filter icon that is displayed on the stop details component.
Running "expo doctor"
- Finding all copies of expo-modules-autolinking
- Finding all copies of @expo/config-plugins
[stderr] [02:07:19] Expected package @expo/config-plugins@^5.0.0
[stderr] [02:07:19] Found invalid:
[stderr] [02:07:19] @expo/[email protected]
[stderr] [02:07:19] (for more info, run: npm why @expo/config-plugins)
- Finding all copies of @expo/prebuild-config
- Finding all copies of @unimodules/core
- Finding all copies of @unimodules/react-native-adapter
- Finding all copies of react-native-unimodules
[stderr] [02:07:23] Some dependencies are incompatible with the installed expo package version:
[stderr] [02:07:23] - expo-updates - expected version: ~0.14.6 - actual version installed: 0.14.5
[stderr] [02:07:23] - react-native - expected version: 0.69.6 - actual version installed: 0.69.5
[stderr] [02:07:23] Your project may not work correctly until you install the correct versions of the packages.
[stderr] To install the correct versions of these packages, please run: expo doctor --fix-dependencies,
[stderr] or install individual packages by running expo install [package-name ...]
Command "expo doctor" failed.
When selecting a favorite route, there are issues if the routes were not added in descending order.
Steps to reproduce:
1 Red West
1 Red East
1 Red East
Notice 1 Red West
shows up as being selected.
Seeing a number of occurrences of the following error:
Exception com.facebook.react.common.JavascriptException:
at com.facebook.react.modules.core.ExceptionsManagerModule.reportException (ExceptionsManagerModule.java:72)
at java.lang.reflect.Method.invoke
at com.facebook.react.bridge.JavaMethodWrapper.invoke (JavaMethodWrapper.java:372)
at com.facebook.react.bridge.JavaModuleWrapper.invoke (JavaModuleWrapper.java:188)
at com.facebook.jni.NativeRunnable.run
at android.os.Handler.handleCallback (Handler.java:942)
at android.os.Handler.dispatchMessage (Handler.java:99)
at com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage (MessageQueueThreadHandler.java:27)
at android.os.Looper.loopOnce (Looper.java:226)
at android.os.Looper.loop (Looper.java:313)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run (MessageQueueThreadImpl.java:228)
at java.lang.Thread.run (Thread.java:1012)
When switching from a route with buses to a route without buses, the buses from the original route are not removed from the map.
When arrivals are being fetched, show a small loading line to indicate they are being updated.
Add a pre-commit hook to format code.
Settings page should be navigated to through a hamburger menu (slides out from left).
On settings page, there should be (at this point)
When in a different timezone than Central, the minutes until arrival are incorrect. These should either be passed from the backend or calculated on the frontend while respecting timezone differences.
If the bus is arriving in 10 minutes, someone on the west coast will see 130 minutes due to being two hours behind.
If the bus is arriving in 10 minutes, someone on the west coast will see 10 minutes until arrival.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.