https://github.com/shinjith-dev/vidyalai-assignment
https://github.com/shinjith-dev/vidyalai-assignment
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/shinjith-dev/vidyalai-assignment
- Owner: shinjith-dev
- Created: 2024-08-21T05:28:01.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-08-21T07:36:46.000Z (almost 2 years ago)
- Last Synced: 2025-02-10T04:29:39.688Z (over 1 year ago)
- Language: JavaScript
- Size: 99.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
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.

- [ ] 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.