- A simple tool for quickly glancing MetroTransit departures in Minneapolis/St. Paul.
- This is a minimal android project in
Kotlin
. - Uses MetroTransit public API https://svc.metrotransit.org/nextrip.
- The documentation for the code is itself.
- The app is targetted towards people who use some metro transport stops frequently. For example, going to work, coming back home, going to grocery store...
- Find the app at Play Store.
- Install the app on an android device.
- Add some stops (using respective stop ids) and give them (unique) names.
- The departures from those stops shall appear.
- Similarly remove stops when not needed.
- The departures are not automatically updated. A sync button on the bottom shows how long ago was the last sync. Press that button to sync again.
- No login required.
- No location permission needed.
- If a stop's departures can not be fetched, its id might be wrong. Try removing and adding it again.
Adding a stop | |
Removing a stop | |
Sync |
Adding a stop | Removing a stop | Viewing departures |
---|---|---|
- Adding a stop
- Removing a stop
- Viewing departures
- Scroll view in stop departures activity.
- Display stop name before requesting departuresList. Useful in case of laggy response.
- Update last sync state in sync() rather than in success callback. Safer choice in case of laggy response.
- Adding a stop.
- Where can stop ids be found? - Link provided.
- StopId validation: len == 5 & uniqueness.
- StopName validation: 0 < name & uniqueness.
- Db add.
- finish() on add.
- Read stops from db.
- Updated list on add/remove finish() return.
- Removing a stop.
- Recycler view.
- Db remove.
- finish() on remove.
- Simplify Holder object.
- Inline shared pref commit() & Error check shared pref commit()
- Improve validation comments, Improve messages; add period at the end.
- Remove background pictures if copyrighted.
- Improve styling.
- Decrease num of id references to xml elements.
- Check internet connection.
- Demo.
- Improves validation message display in AddStopActivity. (Uses above keyboard Snackbars).
- Limit stop nickname len.
- Improve Layout rules in Stop Departures.
- Update demos.
- Release on play store.
- Simplify last sync x min ago periodic update.
- Check internet connection idiomatically.