Skip to content
This repository has been archived by the owner on Oct 18, 2024. It is now read-only.

Commit

Permalink
feat: issue and default branch check
Browse files Browse the repository at this point in the history
  • Loading branch information
eddiejaoude committed Jul 10, 2024
1 parent 1a236ef commit f0b19c1
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 1 deletion.
24 changes: 24 additions & 0 deletions src/utils/checks/defaultBranch.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
export default function defaultBranch(repo) {
const defaultBranchName = "main";

let response = {
id: "defaultBranch",
href: "/repo/status",
title: "Default Branch",
};

if (repo.default_branch === defaultBranchName) {
response.status = "success";
response.description = "You are using the recommend default branch name.";
response.extra = "No action required.";
}

if (!repo.default_branch !== defaultBranchName) {
response.status = "warning";
response.description =
"You are not using the recommended default branch name.";
response.extra = "This may confuse contributors on your project.";
}

return response;
}
11 changes: 10 additions & 1 deletion src/utils/checks/index.js
Original file line number Diff line number Diff line change
@@ -1,10 +1,19 @@
import activity from "./activity";
import defaultBranch from "./defaultBranch";
import description from "./description";
import issues from "./issues";
import topics from "./topics";
import url from "./url";

export default function checks(repo) {
const checks = [description(repo), url(repo), topics(repo), activity(repo)];
const checks = [
description(repo),
url(repo),
topics(repo),
activity(repo),
issues(repo),
defaultBranch(repo),
];

const summary = Object.groupBy(checks, ({ status }) => status);

Expand Down
31 changes: 31 additions & 0 deletions src/utils/checks/issues.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
export default function issues(repo) {
const min = 5;
const max = 20;

let response = {
id: "issues",
href: "/repo/status",
title: "Issue",
};

if (repo.open_issues > max) {
response.status = "success";
response.description = "You have open issues.";
response.extra = "No action required.";
}

if (repo.open_issues >= min && repo.open_issues <= max) {
response.status = "warning";
response.description = "You have some open issues.";
response.extra = "Are there any bugs or features ideas you have?";
}

if (repo.open_issues < min) {
response.status = "error";
response.description = "There are not enough open issues.";
response.extra =
"Try creating some more, or asking the community for ideas.";
}

return response;
}

0 comments on commit f0b19c1

Please sign in to comment.