From 96a46eb9b31aecab0d10e09e774c750d77a4035a Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Tue, 22 Feb 2022 10:07:46 +0100 Subject: [PATCH 01/15] updated js-filtered out projects --- code/script.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/code/script.js b/code/script.js index e69de29b..84617ac8 100644 --- a/code/script.js +++ b/code/script.js @@ -0,0 +1,15 @@ +const projects = document.getElementById("projects"); +const chart = document.getElementById("chart"); +const repo_URL = "https://api.github.com/users/Sherin-Susan-Thomas/repos"; + +fetch(repo_URL) + .then((res) => res.json()) + .then((userData) => { + console.log("userData", userData); + const filteredRepos = userData.filter((item) => item.fork); + console.log("filteredRepos", filteredRepos); + const filteredRepos2 = filteredRepos.filter((item) => + item.name.includes("project-") + ); + console.log("filteredRepos2", filteredRepos2); + }); From aade74b50c207d41232c12ace975654d140b4462 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Wed, 23 Feb 2022 14:10:23 +0100 Subject: [PATCH 02/15] chart done --- code/.gitignore | 4 ++++ code/chart.js | 22 +++++++++++++++++++--- code/index.html | 37 +++++++++++++++++++------------------ code/script.js | 20 ++++++++++++++------ code/token.js | 1 + 5 files changed, 57 insertions(+), 27 deletions(-) create mode 100644 code/.gitignore create mode 100644 code/token.js diff --git a/code/.gitignore b/code/.gitignore new file mode 100644 index 00000000..ee3207b8 --- /dev/null +++ b/code/.gitignore @@ -0,0 +1,4 @@ +// .gitignore file + +#ignore token js file +code/token.js \ No newline at end of file diff --git a/code/chart.js b/code/chart.js index 92e85a30..d5705502 100644 --- a/code/chart.js +++ b/code/chart.js @@ -1,4 +1,20 @@ -//DOM-selector for the canvas 👇 -const ctx = document.getElementById('chart').getContext('2d') +const ctx = document.getElementById("chart").getContext("2d"); -//"Draw" the chart here 👇 +//"Draw" the chart here + +const config = { + type: "doughnut", + data: { + labels: ["Finished projects", "Projects left"], + datasets: [ + { + label: "My First Dataset", + data: [6, 20 - 6], + backgroundColor: ["rgb(255, 99, 132)", "rgb(54, 162, 235)"], + hoverOffset: 4, + }, + ], + }, +}; + +const myChart = new Chart(ctx, config); diff --git a/code/index.html b/code/index.html index 2fb5e0ae..339425c6 100644 --- a/code/index.html +++ b/code/index.html @@ -1,21 +1,22 @@ - - - - - Project GitHub Tracker - - - -

GitHub Tracker

-

Projects:

-
+ + + + + Project GitHub Tracker + + + +

GitHub Tracker

+

Projects

+
- - - - - - - \ No newline at end of file + + + + + + + + diff --git a/code/script.js b/code/script.js index 84617ac8..038789a0 100644 --- a/code/script.js +++ b/code/script.js @@ -2,14 +2,22 @@ const projects = document.getElementById("projects"); const chart = document.getElementById("chart"); const repo_URL = "https://api.github.com/users/Sherin-Susan-Thomas/repos"; -fetch(repo_URL) +const options = { + method: "GET", + headers: { + Authorization: `token ${API_TOKEN}`, + }, +}; + +fetch(repo_URL, options) .then((res) => res.json()) .then((userData) => { console.log("userData", userData); - const filteredRepos = userData.filter((item) => item.fork); - console.log("filteredRepos", filteredRepos); - const filteredRepos2 = filteredRepos.filter((item) => - item.name.includes("project-") + const filteredRepos = userData.filter( + (item) => item.fork && item.name.includes("project-") ); - console.log("filteredRepos2", filteredRepos2); + filteredRepos.forEach((repo) => { + projects.innerHTML += `

${repo.name}

`; + }); + console.log("filteredRepos", filteredRepos); }); diff --git a/code/token.js b/code/token.js new file mode 100644 index 00000000..c38f25da --- /dev/null +++ b/code/token.js @@ -0,0 +1 @@ +const API_TOKEN = "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"; From fd59c36eb7a4614eefa80bcb193e74418bdc687d Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Wed, 23 Feb 2022 14:11:52 +0100 Subject: [PATCH 03/15] updated js --- code/.gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/.gitignore b/code/.gitignore index ee3207b8..50dfb5ac 100644 --- a/code/.gitignore +++ b/code/.gitignore @@ -1,4 +1,4 @@ // .gitignore file #ignore token js file -code/token.js \ No newline at end of file +.code/token.js \ No newline at end of file From 170d67d35d33f00b237157b1a55c8000b2b2c33e Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Wed, 23 Feb 2022 14:17:50 +0100 Subject: [PATCH 04/15] updated js --- code/.gitignore | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/.gitignore b/code/.gitignore index 50dfb5ac..98f73756 100644 --- a/code/.gitignore +++ b/code/.gitignore @@ -1,4 +1,4 @@ -// .gitignore file + #ignore token js file -.code/token.js \ No newline at end of file +code/token.js From cafe2d57e088c2b5d17a4d7a8b560bb13f331611 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Wed, 23 Feb 2022 14:35:46 +0100 Subject: [PATCH 05/15] updated js --- .gitignore | 2 ++ .vscode/settings.json | 2 +- code/.gitignore | 4 ---- 3 files changed, 3 insertions(+), 5 deletions(-) create mode 100644 .gitignore delete mode 100644 code/.gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..11f4a48a --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +// .gitignore file +code/secret.js diff --git a/.vscode/settings.json b/.vscode/settings.json index e8783bfe..ca5de4ce 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,3 @@ { "liveServer.settings.port": 5505 -} \ No newline at end of file +} diff --git a/code/.gitignore b/code/.gitignore deleted file mode 100644 index 98f73756..00000000 --- a/code/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ - - -#ignore token js file -code/token.js From b0dc9b7fc35dfebe3f2aea9628cc929592c480cc Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Wed, 23 Feb 2022 14:43:48 +0100 Subject: [PATCH 06/15] updated js --- .gitignore | 4 ++-- code/token.js | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) delete mode 100644 code/token.js diff --git a/.gitignore b/.gitignore index 11f4a48a..8a3064b9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -// .gitignore file -code/secret.js + +code/token.js diff --git a/code/token.js b/code/token.js deleted file mode 100644 index c38f25da..00000000 --- a/code/token.js +++ /dev/null @@ -1 +0,0 @@ -const API_TOKEN = "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"; From 9513102a69c7931a60392ea9d9a0a8ec25d4d832 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Wed, 23 Feb 2022 14:50:42 +0100 Subject: [PATCH 07/15] updated js --- code/script.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/script.js b/code/script.js index 038789a0..719c3944 100644 --- a/code/script.js +++ b/code/script.js @@ -5,7 +5,7 @@ const repo_URL = "https://api.github.com/users/Sherin-Susan-Thomas/repos"; const options = { method: "GET", headers: { - Authorization: `token ${API_TOKEN}`, + Authorization: ` ${API_TOKEN}`, }, }; From 12d3643e378a8b72a137ae2d2f577f0bbffcf56f Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Thu, 24 Feb 2022 08:30:40 +0100 Subject: [PATCH 08/15] fetched pRs --- code/chart.js | 6 ++--- code/index.html | 4 +-- code/script.js | 66 ++++++++++++++++++++++++++++++++++++++++--------- 3 files changed, 60 insertions(+), 16 deletions(-) diff --git a/code/chart.js b/code/chart.js index d5705502..6ff88614 100644 --- a/code/chart.js +++ b/code/chart.js @@ -8,9 +8,9 @@ const config = { labels: ["Finished projects", "Projects left"], datasets: [ { - label: "My First Dataset", - data: [6, 20 - 6], - backgroundColor: ["rgb(255, 99, 132)", "rgb(54, 162, 235)"], + label: "My Projects", + data: [6, 19 - 6], + backgroundColor: ["rgb(55, 99, 132)", "rgb(80, 92, 125)"], hoverOffset: 4, }, ], diff --git a/code/index.html b/code/index.html index 339425c6..2c299ea8 100644 --- a/code/index.html +++ b/code/index.html @@ -9,8 +9,8 @@

GitHub Tracker

-

Projects

-
+ +
diff --git a/code/script.js b/code/script.js index 719c3944..eb8a6c7b 100644 --- a/code/script.js +++ b/code/script.js @@ -1,23 +1,67 @@ const projects = document.getElementById("projects"); +const userProfile = document.getElementById("userProfile"); const chart = document.getElementById("chart"); +const user_URL = "https://api.github.com/users/Sherin-Susan-Thomas"; const repo_URL = "https://api.github.com/users/Sherin-Susan-Thomas/repos"; const options = { method: "GET", headers: { - Authorization: ` ${API_TOKEN}`, + Authorization: `token ${API_TOKEN}`, }, }; -fetch(repo_URL, options) - .then((res) => res.json()) - .then((userData) => { - console.log("userData", userData); - const filteredRepos = userData.filter( - (item) => item.fork && item.name.includes("project-") - ); - filteredRepos.forEach((repo) => { - projects.innerHTML += `

${repo.name}

`; +//To fetch profile data +const user = () => { + fetch(user_URL, options) + .then((res) => res.json()) + .then((data) => { + console.log("data", data); + userProfile.innerHTML += `

${data.name}

+ `; }); - console.log("filteredRepos", filteredRepos); +}; +user(); + +// To fetch repositories +const userRepo = () => { + fetch(repo_URL, options) + .then((res) => res.json()) + .then((userData) => { + console.log("userData", userData); + const filteredRepos = userData.filter( + (item) => item.fork && item.name.includes("project-") // to filter technigo projects + ); + filteredRepos.forEach((repo) => { + const date = new Date(repo.pushed_at).toDateString(); + projects.innerHTML += `

${repo.name}

+ Link to the repository +

Default Branch: ${repo.default_branch}

+

Latest Push update: ${date}

+ `; + }); + console.log("filteredRepos", filteredRepos); + pullRequests(filteredRepos); + myChart(filteredRepos.length); + }); +}; + +const pullRequests = (repos) => { + repos.forEach((repo) => { + console.log("repo", repo); + fetch( + `https://api.github.com/repos/Technigo/${repo.name}/pulls?per_page=100`, + options + ) // to filter pull requests + .then((res) => res.json()) + .then((data) => { + console.log("data", data); + const myPullRequest = data.find( + (pull) => pull.user.login === repo.owner.login + ); // pullrequests fetches the entire pullrequest specfic to the projecr, filtering out pull requests made by me. + console.log("myPullRequest", myPullRequest); + }); }); +}; + +userRepo(); From ed99ec2b66bc842639e5b4fe0ce54d32832ab864 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Fri, 25 Feb 2022 07:47:32 +0100 Subject: [PATCH 09/15] updated js --- code/chart.js | 17 +++++++- code/image/github.png | Bin 0 -> 101388 bytes code/index.html | 14 +++++-- code/script.js | 36 ++++++++++++----- code/style.css | 91 +++++++++++++++++++++++++++++++++++++++++- 5 files changed, 141 insertions(+), 17 deletions(-) create mode 100644 code/image/github.png diff --git a/code/chart.js b/code/chart.js index 6ff88614..d86b4608 100644 --- a/code/chart.js +++ b/code/chart.js @@ -4,17 +4,30 @@ const ctx = document.getElementById("chart").getContext("2d"); const config = { type: "doughnut", + data: { labels: ["Finished projects", "Projects left"], + datasets: [ { label: "My Projects", data: [6, 19 - 6], - backgroundColor: ["rgb(55, 99, 132)", "rgb(80, 92, 125)"], - hoverOffset: 4, + backgroundColor: ["rgb(132, 207, 189)", "rgb(139, 247, 189)"], + hoverOffset: 2, }, ], }, + options: { + plugins: { + legend: { + labels: { + font: { + size: 25, + }, + }, + }, + }, + }, }; const myChart = new Chart(ctx, config); diff --git a/code/image/github.png b/code/image/github.png new file mode 100644 index 0000000000000000000000000000000000000000..5eb5bc2d0f1895659d7679cc1947615074eba91e GIT binary patch literal 101388 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μy5O_*wsJfHPJpe+EPU>r636%*rvLq4>mTC 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

-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

A2D7q_&O5NvduXiR$KjZgX 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

QFNnS9xk73Sp#p(1TXM+W0JQ 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 literal 0 HcmV?d00001 diff --git a/code/index.html b/code/index.html index 2c299ea8..6f207005 100644 --- a/code/index.html +++ b/code/index.html @@ -6,14 +6,20 @@ Project GitHub Tracker + -

GitHub Tracker

-
- +
+
+
+
+ +
- diff --git a/code/script.js b/code/script.js index eb8a6c7b..fe528f89 100644 --- a/code/script.js +++ b/code/script.js @@ -17,8 +17,13 @@ const user = () => { .then((res) => res.json()) .then((data) => { console.log("data", data); - userProfile.innerHTML += `

${data.name}

- `; + userProfile.innerHTML += ` +

Technigo GitHub Tracker

+ +

${data.name}

+ + + `; }); }; user(); @@ -30,19 +35,20 @@ const userRepo = () => { .then((userData) => { console.log("userData", userData); const filteredRepos = userData.filter( - (item) => item.fork && item.name.includes("project-") // to filter technigo projects + (item) => item.fork == true && item.name.includes("project-") // to filter technigo projects ); filteredRepos.forEach((repo) => { const date = new Date(repo.pushed_at).toDateString(); - projects.innerHTML += `

${repo.name}

-
Link to the repository -

Default Branch: ${repo.default_branch}

-

Latest Push update: ${date}

+ projects.innerHTML += ` + ${repo.name} +

Default Branch: ${repo.default_branch}

+

Latest Push update: ${date}

+

Commits Done:

+ `; }); console.log("filteredRepos", filteredRepos); pullRequests(filteredRepos); - myChart(filteredRepos.length); }); }; @@ -55,13 +61,25 @@ const pullRequests = (repos) => { ) // to filter pull requests .then((res) => res.json()) .then((data) => { + const commits = document.getElementById(`commit-${repo.name}`); console.log("data", data); const myPullRequest = data.find( (pull) => pull.user.login === repo.owner.login - ); // pullrequests fetches the entire pullrequest specfic to the projecr, filtering out pull requests made by me. + ); // pullrequests fetches the entire pullrequest specfic to the project, filtering out pull requests made by me. console.log("myPullRequest", myPullRequest); + fetchCommits(myPullRequest.commits_url, repo.name); }); }); }; +const fetchCommits = (commitsURL, reponame) => { + fetch(commitsURL, options) + .then((res) => { + return res.json(); + }) + .then((data) => { + console.log("data", data); + document.getElementById(`commit-${reponame}`).innerHTML += data.length; + }); +}; userRepo(); diff --git a/code/style.css b/code/style.css index 7c8ad447..83254230 100644 --- a/code/style.css +++ b/code/style.css @@ -1,3 +1,90 @@ +* { + margin: 0px; + padding: 0px; + box-sizing: border-box; +} + body { - background: #FFECE9; -} \ No newline at end of file + background-color: white; +} +.user-profile { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + padding: 10px; +} +.user-profile img { + border-radius: 50%; + height: 50vh; + width: 50vh; + padding: 20px; +} +.user-name { + padding: 20px; +} +.button { + height: 5vh; + width: 30vh; + font-size: 20px; + background-color: rgba(6, 26, 16, 0.158); + border-radius: 10px; + text-align: center; +} +.button a { + text-decoration: none; + text-transform: none; +} +.fa-github { + color: white; + height: 100px; + width: 100px; +} +a { + color: black; + text-transform: uppercase; +} +a:hover { + color: blue; +} +.projects { + display: flex; + flex-direction: column; +} +canvas { + width: 20rem !important; + height: 20rem !important; + margin-left: 2rem; + margin-top: 5rem; +} +.repo1 { + text-align: center; + background-color: rgba(6, 26, 16, 0.158); + padding: 20px; + border-radius: 10px 10px 0 0px; + margin-top: 20px; +} + +.repo2, +.repo3 { + padding: 10px; + background-color: rgba(132, 247, 189, 0.24); +} +.repo4 { + padding: 10px; + background-color: rgba(132, 247, 189, 0.24); + border-radius: 0 0px 10px 10px; +} +@media only screen and (min-width: 768px) { + .projects { + margin-right: 10rem; + margin-left: 10rem; + } + canvas { + width: 30rem !important; + height: 30rem !important; + margin-left: 10rem; + margin-top: 5rem; + font-size: 100px; + } +} From 25cff7ae1eea7e770f2337bd77ce4d06e4898cba Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Fri, 25 Feb 2022 13:04:49 +0100 Subject: [PATCH 10/15] css styling done --- code/chart.js | 45 ++++++++++++++++--------------- code/index.html | 8 +++--- code/script.js | 65 +++++++++++++++++++++++--------------------- code/style.css | 72 +++++++++++++++++-------------------------------- 4 files changed, 87 insertions(+), 103 deletions(-) diff --git a/code/chart.js b/code/chart.js index d86b4608..c7665882 100644 --- a/code/chart.js +++ b/code/chart.js @@ -1,33 +1,36 @@ +//DOM-selector for the canvas 👇 const ctx = document.getElementById("chart").getContext("2d"); -//"Draw" the chart here - -const config = { - type: "doughnut", - - data: { - labels: ["Finished projects", "Projects left"], +//"Draw" the chart here 👇 +const fetchChart = (repos) => { + const labels = ["Completed Projects", "Remaining Projects"]; + const data = { + labels: labels, datasets: [ { - label: "My Projects", - data: [6, 19 - 6], - backgroundColor: ["rgb(132, 207, 189)", "rgb(139, 247, 189)"], - hoverOffset: 2, + label: "My First dataset", + backgroundColor: ["rgb(57, 91, 100)", "rgb(148, 180, 159)"], + borderColor: "#f7e9e7", + data: [repos, 19 - repos], }, ], - }, - options: { - plugins: { - legend: { - labels: { - font: { - size: 25, + }; + + const config = { + type: "doughnut", + data: data, + options: { + plugins: { + legend: { + labels: { + // This more specific font property overrides the global property + font: {}, }, }, }, }, - }, -}; + }; -const myChart = new Chart(ctx, config); + const myChart = new Chart(document.getElementById("chart"), config); +}; diff --git a/code/index.html b/code/index.html index 6f207005..dc055844 100644 --- a/code/index.html +++ b/code/index.html @@ -5,18 +5,16 @@ Project GitHub Tracker - + -
-
-
-
+
+
diff --git a/code/script.js b/code/script.js index fe528f89..9ef52547 100644 --- a/code/script.js +++ b/code/script.js @@ -18,11 +18,12 @@ const user = () => { .then((data) => { console.log("data", data); userProfile.innerHTML += ` -

Technigo GitHub Tracker

- -

${data.name}

+

GitHub Tracker

+ +

${data.name}

+

${data.bio}


+

Follow

- `; }); }; @@ -39,37 +40,41 @@ const userRepo = () => { ); filteredRepos.forEach((repo) => { const date = new Date(repo.pushed_at).toDateString(); - projects.innerHTML += ` - ${repo.name} -

Default Branch: ${repo.default_branch}

-

Latest Push update: ${date}

-

Commits Done:

- + projects.innerHTML += `
+

${repo.name}

+

(${repo.default_branch})

+

Latest update: Pushed on ${date}

+

Commits Done:

+
`; }); + fetchChart(filteredRepos.length); console.log("filteredRepos", filteredRepos); pullRequests(filteredRepos); }); -}; - -const pullRequests = (repos) => { - repos.forEach((repo) => { - console.log("repo", repo); - fetch( - `https://api.github.com/repos/Technigo/${repo.name}/pulls?per_page=100`, - options - ) // to filter pull requests - .then((res) => res.json()) - .then((data) => { - const commits = document.getElementById(`commit-${repo.name}`); - console.log("data", data); - const myPullRequest = data.find( - (pull) => pull.user.login === repo.owner.login - ); // pullrequests fetches the entire pullrequest specfic to the project, filtering out pull requests made by me. - console.log("myPullRequest", myPullRequest); - fetchCommits(myPullRequest.commits_url, repo.name); - }); - }); + const pullRequests = (repos) => { + repos.forEach((repo) => { + console.log("repo", repo); + fetch( + `https://api.github.com/repos/Technigo/${repo.name}/pulls?per_page=100`, + options + ) // to filter pull requests + .then((res) => res.json()) + .then((data) => { + console.log("data", data); + const myPullRequest = data.find( + (pull) => pull.user.login === repo.owner.login + ); // pullrequests fetches the entire pullrequest specfic to the project, filtering out pull requests made by me. + console.log("myPullRequest", myPullRequest); + if (myPullRequest) { + fetchCommits(myPullRequest.commits_url, repo.name); + } else { + document.getElementById(`commit-${repo.name}`).innerHTML = + "Commits Done: 0 (Pull request unavailable/Group project) "; + } + }); + }); + }; }; const fetchCommits = (commitsURL, reponame) => { fetch(commitsURL, options) diff --git a/code/style.css b/code/style.css index 83254230..43f72e68 100644 --- a/code/style.css +++ b/code/style.css @@ -5,7 +5,7 @@ } body { - background-color: white; + background-color: #d3e4cd; } .user-profile { display: flex; @@ -23,68 +23,46 @@ body { .user-name { padding: 20px; } -.button { - height: 5vh; - width: 30vh; +h4 { font-size: 20px; - background-color: rgba(6, 26, 16, 0.158); - border-radius: 10px; - text-align: center; -} -.button a { - text-decoration: none; - text-transform: none; -} -.fa-github { - color: white; - height: 100px; - width: 100px; } a { color: black; text-transform: uppercase; + text-decoration: none; } a:hover { color: blue; } .projects { display: flex; - flex-direction: column; + flex-flow: row wrap; + justify-content: center; + gap: 1rem; + margin: 1rem; } -canvas { - width: 20rem !important; - height: 20rem !important; - margin-left: 2rem; - margin-top: 5rem; +h3 { + padding: 10px; } -.repo1 { - text-align: center; - background-color: rgba(6, 26, 16, 0.158); - padding: 20px; - border-radius: 10px 10px 0 0px; - margin-top: 20px; +.repo { + padding: 5px; + text-transform: capitalize; } - -.repo2, -.repo3 { - padding: 10px; - background-color: rgba(132, 247, 189, 0.24); +.repos { + width: 350px; + background-color: #10251042; + border: 1px solid black; + border-radius: 10px; + padding: 1rem; } -.repo4 { - padding: 10px; - background-color: rgba(132, 247, 189, 0.24); - border-radius: 0 0px 10px 10px; + +.chart-container { + display: flex; + justify-content: center; + align-items: center; } -@media only screen and (min-width: 768px) { +@media only screen and (min-width: 1024px) { .projects { - margin-right: 10rem; - margin-left: 10rem; - } - canvas { - width: 30rem !important; - height: 30rem !important; - margin-left: 10rem; - margin-top: 5rem; - font-size: 100px; + margin: 2rem 5rem; } } From 0add94789116f3bb08ab085be3ba9fc5213f8036 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Fri, 25 Feb 2022 13:18:43 +0100 Subject: [PATCH 11/15] Updated chart js --- code/chart.js | 2 +- code/style.css | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/chart.js b/code/chart.js index c7665882..e8ba83de 100644 --- a/code/chart.js +++ b/code/chart.js @@ -32,5 +32,5 @@ const fetchChart = (repos) => { }, }; - const myChart = new Chart(document.getElementById("chart"), config); + const myChart = new Chart(ctx, config); }; diff --git a/code/style.css b/code/style.css index 43f72e68..aa28919c 100644 --- a/code/style.css +++ b/code/style.css @@ -32,7 +32,7 @@ a { text-decoration: none; } a:hover { - color: blue; + color: white; } .projects { display: flex; From b49eaaa4dfb8338c5d754dbfb4013d4e4f12a83a Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Sun, 27 Feb 2022 15:52:29 +0100 Subject: [PATCH 12/15] updated chart to pie --- code/chart.js | 19 +++++-------------- code/script.js | 1 - code/style.css | 16 +++++++++++++--- 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/code/chart.js b/code/chart.js index e8ba83de..b0d0ea32 100644 --- a/code/chart.js +++ b/code/chart.js @@ -2,34 +2,25 @@ const ctx = document.getElementById("chart").getContext("2d"); //"Draw" the chart here 👇 -const fetchChart = (repos) => { +const fetchChart = (amount) => { const labels = ["Completed Projects", "Remaining Projects"]; const data = { labels: labels, datasets: [ { - label: "My First dataset", + label: "Technigo projects", backgroundColor: ["rgb(57, 91, 100)", "rgb(148, 180, 159)"], borderColor: "#f7e9e7", - data: [repos, 19 - repos], + data: [amount, 19 - amount], + hoverOffset: 4, }, ], }; const config = { - type: "doughnut", + type: "pie", data: data, - options: { - plugins: { - legend: { - labels: { - // This more specific font property overrides the global property - font: {}, - }, - }, - }, - }, }; const myChart = new Chart(ctx, config); diff --git a/code/script.js b/code/script.js index 9ef52547..7419137d 100644 --- a/code/script.js +++ b/code/script.js @@ -86,5 +86,4 @@ const fetchCommits = (commitsURL, reponame) => { document.getElementById(`commit-${reponame}`).innerHTML += data.length; }); }; - userRepo(); diff --git a/code/style.css b/code/style.css index aa28919c..f695daa6 100644 --- a/code/style.css +++ b/code/style.css @@ -57,12 +57,22 @@ h3 { } .chart-container { - display: flex; - justify-content: center; - align-items: center; + display: grid; + + margin: 0 auto; + width: 20rem; +} + +@media only screen and (min-width: 768px) { + .chart-container { + width: 25rem; + } } @media only screen and (min-width: 1024px) { .projects { margin: 2rem 5rem; } + .chart-container { + width: 30rem; + } } From 7dc20b196965f6968925de9f43d2e1302fa51af1 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas <88188144+Sherin-Susan-Thomas@users.noreply.github.com> Date: Mon, 28 Feb 2022 09:56:27 +0100 Subject: [PATCH 13/15] Update README.md --- README.md | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 1613a3b0..7fdc3db9 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,10 @@ # GitHub Tracker -Replace this readme with your own information about your project. - -Start by briefly describing the assignment in a sentence or two. Keep it short and to the point. +The week 7 project was creating a github tracker to keep track of the GitHub repos using GitHub API. The pie chart shows the number of projects that I have done at technigo and number of projects left to be done using Chart.js. ## The problem - -Describe how you approached to problem, and what tools and techniques you used to solve it. How did you plan? What technologies did you use? If you had more time, what would be next? +This project was roller-coaster ride and I could learn a lot about how to fetch from Api and invoking the functions. I solved my problems by googling, stack overflow and town-hall sessions. If I had more time, I would like to add some more data to display and added bit more styling. ## View it live -Every project should be deployed somewhere. Be sure to include the link to the deployed project so that the viewer can click around and see what it's all about. +Check it out here https://github-tracker-sherin.netlify.app/ From 580311be198ca42f2fe5bc194cf68fbb3eac6c50 Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas <88188144+Sherin-Susan-Thomas@users.noreply.github.com> Date: Wed, 6 Apr 2022 08:48:23 +0200 Subject: [PATCH 14/15] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7fdc3db9..66f697ed 100644 --- a/README.md +++ b/README.md @@ -7,4 +7,4 @@ This project was roller-coaster ride and I could learn a lot about how to fetch ## View it live -Check it out here https://github-tracker-sherin.netlify.app/ +Check it out here https://sherin-github-tracker.netlify.app/ From a8d3b4c2eb9faedcbd0d53efd7ec92a7913e711b Mon Sep 17 00:00:00 2001 From: Sherin Susan Thomas Date: Thu, 21 Apr 2022 16:12:47 +0200 Subject: [PATCH 15/15] updated token --- code/script.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/code/script.js b/code/script.js index 7419137d..4faec238 100644 --- a/code/script.js +++ b/code/script.js @@ -6,9 +6,6 @@ const repo_URL = "https://api.github.com/users/Sherin-Susan-Thomas/repos"; const options = { method: "GET", - headers: { - Authorization: `token ${API_TOKEN}`, - }, }; //To fetch profile data