Skip to content

Instantly share code, notes, and snippets.

@beelarr
Last active August 14, 2024 14:56
Show Gist options
  • Save beelarr/36da6322181bad4280ef6643620617ad to your computer and use it in GitHub Desktop.
Save beelarr/36da6322181bad4280ef6643620617ad to your computer and use it in GitHub Desktop.
Takehome

GitHub Issue Search

Overview

Explore and visualize GitHub issues through a simple search bar. The search bar will take a GitHub repository URL and return all issues from that repository.

Instructions

First and foremost, this project is meant to see how well you understand Nextjs / React / Typescript.

  • Before you start read all of the tasks in this assignment and fill out the planning section below.
  • Read through the project setup section.
  • Please use Shadcn UI Library for all components- install whatever you need.
  • Use Tailwind CSS for styling.
  • Use the Github API as your source of data.

Tasks

  • Before you start fill out the planning section below.
  • Create a search page with a search bar. Users should be able to paste a GitHub repo URL here.
  • Create a results page that displays all (open, closed, pull requests) issues from the search query.
  • Indicate which issues are closed or pull requests using heroicons.
  • Implement filtering by open, closed, or pull requests on the results page.
  • Add loading, empty, and error states.
  • Once complete fill out the Looking Back section below and send us a link to your repo.

It is an MVP (minimum viable product) - done is better than perfect.

Project Setup

  • Create a repo
  • Put this README.md in the project

Run the following commands

npx create-next-app@latest  

Select yes to all options except to customize the default import alias

npm install @heroicons/react  

To run the development server:

npm run dev  

Open http://localhost:3000 with your browser to see the result.

QnA

Planning

What do you think are the greatest areas of risk in completing the project?

What changes/additions would you make to the design?

List a two or three features that you would consider implementing in the future that would add significant value to the project.


Looking Back

Describe the major design/build decisions and why you made them.

How long did the assignment take (in hours)? Please break down your answer into buckets (e.g. "Learning Framework", "Coding", "Debugging").

If you could go back and give yourself advice at the beginning of the project, what would it be?

Did you learn anything new?

Do you feel that this assignment allowed you to showcase your abilities effectively?

Are there any significant web development-related skills that you possess that were not demonstrated in this exercise? If so, what are they?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment