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

https://github.com/shinjith-dev/vidyalai-assignment


https://github.com/shinjith-dev/vidyalai-assignment

Last synced: about 1 year ago
JSON representation

Awesome Lists containing this project

README

          

## Getting Started

Step 1: Clone the repository to your local system. Ensure not to fork it.

Step 2: Create a new branch - "your_name_vidyalai" in your local repository for making changes.

Step 3: Install packages and make sure you are using Node.js version 18.20 or higher.

```bash
npm i
```

Step 4: Run the development server:

```bash
npm run dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result and complete the tasks mentioned below:

## TASKS
**Note: These tasks need to be completed within 3.5 hours.**
- [ ] Fix carousel scrolling UI: When navigation buttons are clicked, ensure a new image is shown. Additionally, center the carousel navigation buttons vertically relative to the image.
- [ ] Replace dummy images by fetching each album of post using "https://jsonplaceholder.typicode.com/albums/1/photos" in /api/v1/posts route.
- [ ] Make the top nav bar sticky during scrolling.
- [ ] Implement functionality to load more posts upon clicking the "Load More" button. Hide the "Load More" button if no posts exist.
- [ ] Display the user's name and email in each post. Show the first letter for both the first and last names.

![Screenshot from 2024-05-04 08-35-47](https://github.com/vidyalai/interview-challenge-1/assets/67904627/a1dd3dca-27e8-427b-a6dc-41de00d15df1)

- [ ] Convert `UserList` React class component to functional component and convert `witUserData` HOC (Higher order Component) to a custom React hooks
- [ ] Convert `useWindowWidth` hook to ContextAPI. Declare the ContextAPI globally and access the `isSmallerDevice` property.

## Submission
- Create a new public repository in your github account

- Push the changes from your local to the new repo on GitHub.

- Update the readme by putting a check mark against the tasks you have completed. If you have not completed all the tasks, make sure to tick all the relevant ones.

- Open a pull request from "your_name_vidyalai" to "master" in your repo and
Fill [this form](https://docs.google.com/forms/d/e/1FAIpQLSeACdInJitqQ8hncrJdsTYEXVuts0Rb_WlMhLihXz06MTFmwA/viewform) with a link to the pull request.

## Evaluation Criteria
- Clarity and consistency of naming conventions.
- Effectiveness of code modularization.
- Adequacy and robustness of error handling mechanisms.
- Efficiency of code optimization techniques.
- Quality and comprehensiveness of code documentation.