From e96a88258f508947174972bedfde083ee6c7a262 Mon Sep 17 00:00:00 2001 From: evan hameed Date: Mon, 1 Jun 2020 21:28:30 +0300 Subject: [PATCH 1/2] done --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index bd2d837..024749e 100644 --- a/index.html +++ b/index.html @@ -4,7 +4,7 @@ Document - + @@ -28,6 +28,6 @@

GitHub Search

- + \ No newline at end of file From 0f95eaba24bcb9db6950c625b67187b1c7266de0 Mon Sep 17 00:00:00 2001 From: evan hameed Date: Mon, 1 Jun 2020 21:28:36 +0300 Subject: [PATCH 2/2] done --- .vscode/settings.json | 3 +++ js/index.js | 57 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..6f3a291 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "liveServer.settings.port": 5501 +} \ No newline at end of file diff --git a/js/index.js b/js/index.js index e69de29..ff05186 100644 --- a/js/index.js +++ b/js/index.js @@ -0,0 +1,57 @@ + + + +const form = document.getElementById('github-form'); +let inputSearch = document.getElementById('search'); +let submitBtn = document.getElementById('submit'); +let repoUl = document.getElementById('repos-list'); +console.log(form) +form.addEventListener('submit', (event)=>{ + event.preventDefault(); + let userList= document.getElementById('user-list'); + fetch(`https://api.github.com/search/users?q=${inputSearch.value}`) + .then( resp => resp.json()) + .then (data =>{ + console.log(data); + for (const user of data.items){ + + let userLi = document.createElement('li'); + let avatar = document.createElement('img'); + let userLink = document.createElement('a'); + const usersRepo = document.createElement('button'); + avatar.src = user.avatar_url; + avatar .width = 50; + userLink.innerText = 'profile'; + userLink.href=user.url; + userLi.innerText= user.login; + usersRepo.innerText = 'show repos'; + userLi.appendChild(avatar); + userLi.appendChild(userLink); + userLi.appendChild(usersRepo); + userList.appendChild(userLi); + + usersRepo.addEventListener('click',()=>{ + + fetch(`https://api.github.com/users/${user.login}/repos`) + .then(response => response.json()) + .then(repoLinks =>{ + console.log(repoLinks); + + for (const repo of repoLinks){ + + repoUl.insertAdjacentHTML('beforeend',`
  • ${repo.full_name}
  • `) + } + + + + + }) + + }) + + } + inputSearch.value= ''; + + }) + +}) \ No newline at end of file