abilashsenth / FamPay-Extern-Assignment

My entry for Github externship - Fampay for the project 'Android assignment'

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GitHub Externship Winter Cohort 2021 - Organization : FamPay Android-Extern-Assignment

Hi! I'm Abilash Senthilkumar, and this is My entry for Github externship - Fampay for the project 'Android assignment' NOTE: APK is under app/release folder of this project

Quick Description of the Assignment:

  1. A "contextual container" is incorporated that works plug and play with any activity/fragment;
  2. ...that can effectively get instructions from a REST API and render contextual cards in a list based on the API response,
  3. also while adhering to the design specifications provided

Checklist of challenges I was able to achieve

Expected Deliverables:
✔All deeplinks (card, CTAs, Formatted Text entities) should be handled.
✔In the API, almost every component has its own url/deeplink that is used to trigger action on click.
✔On long press of Big Display Card (HC3), it should slide to the right and display action buttons as per the design
✔ On tapping "remind later" action on a card, it should be removed from the display. This card should be shown on the next app start.
✔ On tapping "dismiss now" action, it should be removed from the display. This card should never be visible again.
✔/⏳Implement swipe down to refresh feature (due to time constraints this feature is not implemented fully)
✔Handle loading and error states
✔Write structured code with flexible and reusable components
✔Design should match as closely as possible to the one on Figma

Some screenshots in action

Resources used:

API : https://run.mocky.io/v3/04a04703-5557-4c84-a127-8c55335bb3b4
Design: https://www.figma.com/file/AvK2BRGwMTv4kQab5ymJ0K/AAL3-Android-assignment-Design-Specs

Libraries used for the assignment

☁ Gson for quick JSON parsing into POJOs
☁ Glide for efficient image resource loading
☁ Facebook Shimmer for loading aesthetic
☁ FancyButtons Library for HC3 CTA button
☁ SwipeRefreshLayout from AndroidX

About

My entry for Github externship - Fampay for the project 'Android assignment'

License:GNU General Public License v3.0


Languages

Language:Java 100.0%