Skip to content

rauld323/github-search-repo-project

Repository files navigation

github-search-repo-project

About

Hello there👋 ! I recently completed a project focused on developing a search tool utilizing React and React-Query, specifically targeting GitHub usernames to display corresponding repositories. The key areas of emphasis in this project were responsiveness and efficient state management. To achieve responsiveness, I leveraged Tailwind, utilizing its tools to maintain consistent and uniform elements throughout the application. This ensured a smooth and adaptable user interface across various devices and screen sizes.

For state management, I opted for React-Query. This decision enabled me to effectively handle different states such as loading and error, enhancing the overall user experience by providing clear feedback on ongoing processes. Moreover, beyond managing states, React-Query's caching capability significantly improved the project's performance. Users can observe this enhancement when searching for different users, then returning to a previously searched username without the need to re-submit, as the data remains cached.

Additionally, I incorporated vitest/jest into the testing suite. Apart from these primary focuses, I developed a Storybook for the project's components, facilitating better understanding and testing of these elements. Furthermore, the project has been successfully deployed.


How to run:

To run the project, type npm run dev

To run storybook, type npm run storybook

To run vitest/jest, type npm run test


Future Improvements:

There's ample room for enhancing the shareable components within the project. Presently, these components were tailored specifically to meet the requirements of this particular project. However, there's a great opportunity to make them more versatile and dynamic. The aim would be to create components adaptable to various contexts, ensuring scalability and flexibility. This approach would streamline development efforts, avoiding the need to create different iterations of similar elements and instead offering adaptable components suitable for diverse scenarios.

Regarding the DataFrame component, while it maintains responsiveness, I recognize its simplicity may not fully meet the desired standards. Unfortunately, due to time constraints, I wasn't able to dedicate efforts toward refining the description section. Given more time, I would aim to enrich its features and presentation, ensuring a more comprehensive and detailed output for users.

Refactor, refactor, refactor….

About

Github API Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published