-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
59 lines (57 loc) · 2.1 KB
/
main.js
File metadata and controls
59 lines (57 loc) · 2.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
//Variables
let input = document.querySelector(".repos-container .repos-form input"),
btn = document.querySelector(".repos-container .repos-form button"),
reposBoxContent = document.querySelector(".repos-container .repos-box"),
message = document.querySelector(".repos-container .repos-box .message ");
const getRepositories = () => {
if (input.value == "") {
console.log("Username Empty!");
message.innerHTML = "Please Write Username!";
} else {
let username = input.value;
fetch(`https://api.github.com/users/${username}/repos`)
.then((response) => {
if (!response.ok) {
throw Error("Cannot Connect To The Server!");
} else {
return response.json();
}
})
.then((data) => {
reposBoxContent.innerHTML = "";
data.forEach((repo) => {
console.log(repo.name);
console.log(repo.description);
console.log(repo.language);
console.log(repo.stargazers_count);
console.log(repo.url);
//Start Create Repository Box
let reposBoxDiv = document.createElement("div");
reposBoxDiv.className = "repo-box";
reposBoxDiv.innerHTML += `<h2>${repo.name}</h2>`;
reposBoxDiv.innerHTML += ` <p>${repo.description}</p>`;
reposBoxDiv.innerHTML += `
<div class="laguages">
<span>${repo.language}</span>
</div>`;
let url = repo.homepage;
reposBoxDiv.innerHTML += `
<div class="go">
<div class="stars">
<span><i class="fa-solid fa-star fa-flip"></i></span>
<span>${repo.stargazers_count}</span>
</div>
<div class="visit">
<span><i class="fa-solid fa-circle-right fa-fade"></i></span>
<a href=${url} target= "_blank" >Visit Now</a>
</div>
</div>`;
reposBoxContent.appendChild(reposBoxDiv);
//End Create Repository Box
});
})
.catch((err) => (message.innerHTML = err.message));
}
input.value = "";
};
btn.addEventListener("click", getRepositories);