An open API service indexing awesome lists of open source software.

https://github.com/ebharathi/gyangrove-frontend-task


https://github.com/ebharathi/gyangrove-frontend-task

Last synced: 10 months ago
JSON representation

Awesome Lists containing this project

README

          

![image](https://github.com/ebharathi/gyangrove-frontend-task/assets/76675783/3e25c35c-f1b3-47e9-b443-dda5d789e44b)

FRONTEND TASK FOR GYANGROVE

SETUP AND RUNNING THE PROJECT


npm i


npm start


![image](https://github.com/ebharathi/gyangrove-frontend-task/assets/76675783/ff363bac-f5e3-4145-b5cb-55acf5d1ae88)


STRUCTURE OF MY PROJECTS


There are 3 components basically which contains JSX and utils that connect with API . Also helper functions to format drive url and and date.


Navbar


Recommend


Events






LAZY LOAD IMPLEMENTATION


I have added a scroll event listener "window.addEventListener('scroll', handleScroll)" . Whenever i scroll the page , i check whether the bottom of the page is reached using handleScroll() function, if so i increment page number which triggers an useEffect that call api and new data s appended.







RESPONSIVENESS


I have used tailwind css for the designs and layouts. I used the lg condition to breakdown to mobile screen size.

Transition effects
I have added little transition effects on the cards by removing padding when hovered with ease transition