diff --git a/components/ContributeProject.tsx b/components/ContributeProject.tsx new file mode 100644 index 0000000..655b32a --- /dev/null +++ b/components/ContributeProject.tsx @@ -0,0 +1,134 @@ +import Image from 'next/image'; +import React, { useState } from 'react'; +import { GFIProject, GitHubColors, GithubIssueAssignees } from '../util'; +import ELink from './ELink'; + + +interface ContributeProjectProps { + project: GFIProject, + githubColors: GitHubColors +} + +export default function ContributeProject({ + project, + githubColors, +}: ContributeProjectProps): JSX.Element { + const {issues} = project; + const proppedProject = project.project; + const { + name, + description, + repo, + lang, + topics, + image, + alt, + } = proppedProject; + + const numIssues = issues.length; + + const [displayGfis, setDisplayGfis] = useState(false); + + const displayedIssues = ( + + + { + issues.map(issue=> ( + + + + + + + )) + } + +
#{issue.number}{issue.title} + + + {issue.comments} + +
+ ); + return ( + <> +
+
+
+ {alt} +
+

{name}

+
+ +

+ {' '} + {lang || 'Markdown'} +

+
+ {topics.length > 0 && + +
+
Topics β€’
+
{topics.join(', ')}
+
+
+ } +
{description}
+
+

good first issues

+ +
+ { displayGfis && displayedIssues} +
+ + ); +} + +interface AssignedIssueUsersProps { + assignees: GithubIssueAssignees +} +function AssignedIssueUsers(props: AssignedIssueUsersProps ){ + const displayedAssignees = props.assignees.map(assignee => + assignee ? + (
+ +
+ {`${assignee.login}'s +
+
+
+ ) + : <>, + ); + return( +
+ {displayedAssignees} +
+ ); +} diff --git a/pages/contribute.tsx b/pages/contribute.tsx index eb68399..220fc72 100644 --- a/pages/contribute.tsx +++ b/pages/contribute.tsx @@ -1,8 +1,22 @@ + +import { writeFile } from 'fs'; +import { GetStaticProps } from 'next'; import { NextSeo } from 'next-seo'; import React from 'react'; +import ContributeProject from '../components/ContributeProject'; +import ELink from '../components/ELink'; import Layout from '../components/Layout'; +import { getGoodFirstIssueProjects, getGithubColors, GitHubColors, GFIProject } from '../util'; + +interface ContributeProps { + gfiProjects: GFIProject[], + githubColors: GitHubColors +} -function Contribute(): JSX.Element { +function Contribute({ gfiProjects, githubColors }: ContributeProps): JSX.Element { + const displayedgfiProjects = gfiProjects.map((project) => + , + ); return (
@@ -19,12 +33,140 @@ function Contribute(): JSX.Element { site_name: 'open source at ACM at UCLA', }} /> -

- get started -

+
+

get started

+ +
+
+

+ what is open source? +

+

+ Open source software is code that is made freely available for anyone to + use or enhance! Here at ACM, we take pride in all of our projects being open-source + and open for anyone to work on. +

+

+ what makes open source possible? +

+

+ The main backbone of open source initiatives are tools that simplify collaboration and sharing of code. + Git and Github are two popular tools used by researchers, + companies, and students; at ACM, we use both. +

+

+ how can i contribute? +

+

+ We'll quickly go over how we can use git/github to work on some open source projects. If + you want to learn more about the specifics of what we'll cover, you can check out {' '} + git's documentation + {' '} or our writeups on {' '} + + git workflows + + {' '} and {' '} + + github as a collaboration tool + + {' '} + to get a closer look at what we're doing! +

+

+ jumping into contributing on a project +

+

+ There are thousands of open-source projects out there - it's hard to even find out where to start! + Luckily, some repositories, or the main hub of projects, have issues, or + project tasks, marked as good first issue. + These are great starting points for people to hop in and contribute! +

+ +

Check out some of our projects tagged with good first issues here!

+ +

contribution workflow

+

+ Repositories normally tell you how the steps you need to take to get to work, usually within their + README.mdor their CONTRIBUTING.md but generally, there's generally a standard couple steps + you'll have to take. For a detailed contribution guide, check out github's {' '} + + contribution guide + ! +

+

forking and cloning a repo

+

By clicking fork on a project that you want to contribute to, GitHub generates a personal copy of that + repo under your account. To clone it onto your computer, you can click the code button above the list of files + and run +

+

$ git clone git@github.com:uclaacm/opensource.git

+

to get it onto your machine.

+

branching, making changes

+

+ Generally, when you want to make a specific change to a project, you make a branch, + so that you can work on a new feature without affecting other people's work. + To do so, run the git checkout -b BRANCH_NAME command + to generate a new branch or git checkout BRANCH_NAME to switch between branches. +

+

+ After you've made your changes, run {' '} + git add . then git commit -m "a short commit description" {' '} + to take a snapshot of all the changes you've made and git push to push the changes you + made to GitHub. +

+

making a pull request

+

+ Now that you've successfully made the changes you want on your fork of the project, + if you head over to the original project repository and click Open a pull request, + you can put in a title and description of your changes. +

+

+ After making a pull request, the maintainers of the project will check if your code is up to snuff + and request changes as necessary. Once they approve your changes however, you can merge your changes + in and you've successfully contributed to the project! +

+

what are you waiting for? go work on some projects!

+ +

+ acm's projects w/ good first issues +

+

+ acm currently has + {displayedgfiProjects.length} + { + ` + ${displayedgfiProjects.length>1 ? 'projects' : 'project' } + with good first issues!` + } +

+
+
+ {displayedgfiProjects} +
+
-
+ ); } export default Contribute; + + +export const getStaticProps: GetStaticProps = async () => { + // TODO(mattxwang): change the auth scope and get members, etc. + // see: https://docs.github.com/en/rest/reference/orgs + + const gfiProjects = await getGoodFirstIssueProjects(); + const gfisJson = JSON.stringify(gfiProjects); + writeFile('./test/fixtures/gfiProjects.json', gfisJson, () => { + return; + }); + + const githubColors = await getGithubColors(); + return { + props: { + gfiProjects, + githubColors, + }, + revalidate: 3600, + }; +}; diff --git a/public/comment.svg b/public/comment.svg new file mode 100644 index 0000000..3763976 --- /dev/null +++ b/public/comment.svg @@ -0,0 +1 @@ +comment \ No newline at end of file diff --git a/styles/globals.css b/styles/globals.css index 9c1bdba..8d987b0 100644 --- a/styles/globals.css +++ b/styles/globals.css @@ -33,11 +33,24 @@ body { height: 100%; } +.assignee-image { + border-radius: 50%; + overflow: hidden; + width: 30px; + height: 30px; +} + /* this overrides a child div's display, which is useful for nullifying next/image's wrapper */ .force-child-display-block > div { display: block !important; } +.spaced-row { + display: flex; + justify-content: space-between; + align-items: center; +} + /* overriding the WestwoodCSS default */ .navbar-link a { padding-left: 1em !important; @@ -81,3 +94,59 @@ body { .dev-language-badge.lang-rust { background-color: #DEA584; } + +.vertically-aligned-row { + display: flex; + flex-direction: row; + align-content: center; + align-items: center; +} + +.vertically-aligned-row > * { + align-items: center; + align-content: center; +} + +.gfi-title { + display: flex; + flex-direction: row; + align-items: center; + align-content: center; + text-align: center; + vertical-align: top; + text-align: center; +} + +.gfi-title > h3 { + margin: 0 +} + +.gfi-image { + width: 75px; + height: 75px; +} + +.gfi-button { + background-color: #1E6CFF; + color: white; +} + +.gfi-button-displayed { + color: #1E6CFF; + background-color: rgb(244, 244, 244); +} + +.comment-icon { + margin-right: 5px; +} + +dl * { + display: inline; + margin: 0; +} + +.action { + font-weight: bold; + color: black; + font-size: 36px; +} \ No newline at end of file diff --git a/test/fixtures/gfiProjects.json b/test/fixtures/gfiProjects.json new file mode 100644 index 0000000..2d89604 --- /dev/null +++ b/test/fixtures/gfiProjects.json @@ -0,0 +1 @@ +[{"issues":[{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/20","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/20/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/20/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/20/events","html_url":"https://github.com/uclaacm/linux-lab/issues/20","id":1284729195,"node_id":"I_kwDOHjYvSs5Mk2lr","number":20,"title":"learn react","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"kristinadomingo","id":98865567,"node_id":"U_kgDOBeSRnw","avatar_url":"https://avatars.githubusercontent.com/u/98865567?v=4","gravatar_id":"","url":"https://api.github.com/users/kristinadomingo","html_url":"https://github.com/kristinadomingo","followers_url":"https://api.github.com/users/kristinadomingo/followers","following_url":"https://api.github.com/users/kristinadomingo/following{/other_user}","gists_url":"https://api.github.com/users/kristinadomingo/gists{/gist_id}","starred_url":"https://api.github.com/users/kristinadomingo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kristinadomingo/subscriptions","organizations_url":"https://api.github.com/users/kristinadomingo/orgs","repos_url":"https://api.github.com/users/kristinadomingo/repos","events_url":"https://api.github.com/users/kristinadomingo/events{/privacy}","received_events_url":"https://api.github.com/users/kristinadomingo/received_events","type":"User","site_admin":false},"assignees":[{"login":"kristinadomingo","id":98865567,"node_id":"U_kgDOBeSRnw","avatar_url":"https://avatars.githubusercontent.com/u/98865567?v=4","gravatar_id":"","url":"https://api.github.com/users/kristinadomingo","html_url":"https://github.com/kristinadomingo","followers_url":"https://api.github.com/users/kristinadomingo/followers","following_url":"https://api.github.com/users/kristinadomingo/following{/other_user}","gists_url":"https://api.github.com/users/kristinadomingo/gists{/gist_id}","starred_url":"https://api.github.com/users/kristinadomingo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kristinadomingo/subscriptions","organizations_url":"https://api.github.com/users/kristinadomingo/orgs","repos_url":"https://api.github.com/users/kristinadomingo/repos","events_url":"https://api.github.com/users/kristinadomingo/events{/privacy}","received_events_url":"https://api.github.com/users/kristinadomingo/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2022-06-25T22:15:15Z","updated_at":"2022-06-27T07:17:30Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"If you're new to React, here's a helpful tutorial that walks you through creating a simple app (plus, you get a head start on CS 35L if you haven't taken it yet!): https://reactjs.org/tutorial/tutorial.html","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/20/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/20/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/18","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/18/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/18/events","html_url":"https://github.com/uclaacm/linux-lab/issues/18","id":1284728685,"node_id":"I_kwDOHjYvSs5Mk2dt","number":18,"title":"set up User Permissions page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"henrywangzh","id":43794047,"node_id":"MDQ6VXNlcjQzNzk0MDQ3","avatar_url":"https://avatars.githubusercontent.com/u/43794047?v=4","gravatar_id":"","url":"https://api.github.com/users/henrywangzh","html_url":"https://github.com/henrywangzh","followers_url":"https://api.github.com/users/henrywangzh/followers","following_url":"https://api.github.com/users/henrywangzh/following{/other_user}","gists_url":"https://api.github.com/users/henrywangzh/gists{/gist_id}","starred_url":"https://api.github.com/users/henrywangzh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/henrywangzh/subscriptions","organizations_url":"https://api.github.com/users/henrywangzh/orgs","repos_url":"https://api.github.com/users/henrywangzh/repos","events_url":"https://api.github.com/users/henrywangzh/events{/privacy}","received_events_url":"https://api.github.com/users/henrywangzh/received_events","type":"User","site_admin":false},"assignees":[{"login":"henrywangzh","id":43794047,"node_id":"MDQ6VXNlcjQzNzk0MDQ3","avatar_url":"https://avatars.githubusercontent.com/u/43794047?v=4","gravatar_id":"","url":"https://api.github.com/users/henrywangzh","html_url":"https://github.com/henrywangzh","followers_url":"https://api.github.com/users/henrywangzh/followers","following_url":"https://api.github.com/users/henrywangzh/following{/other_user}","gists_url":"https://api.github.com/users/henrywangzh/gists{/gist_id}","starred_url":"https://api.github.com/users/henrywangzh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/henrywangzh/subscriptions","organizations_url":"https://api.github.com/users/henrywangzh/orgs","repos_url":"https://api.github.com/users/henrywangzh/repos","events_url":"https://api.github.com/users/henrywangzh/events{/privacy}","received_events_url":"https://api.github.com/users/henrywangzh/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:12:41Z","updated_at":"2022-06-26T01:26:14Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/18/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/18/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/17","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/17/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/17/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/17/events","html_url":"https://github.com/uclaacm/linux-lab/issues/17","id":1284728639,"node_id":"I_kwDOHjYvSs5Mk2c_","number":17,"title":"set up Searching page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"jason2020","id":13056466,"node_id":"MDQ6VXNlcjEzMDU2NDY2","avatar_url":"https://avatars.githubusercontent.com/u/13056466?v=4","gravatar_id":"","url":"https://api.github.com/users/jason2020","html_url":"https://github.com/jason2020","followers_url":"https://api.github.com/users/jason2020/followers","following_url":"https://api.github.com/users/jason2020/following{/other_user}","gists_url":"https://api.github.com/users/jason2020/gists{/gist_id}","starred_url":"https://api.github.com/users/jason2020/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jason2020/subscriptions","organizations_url":"https://api.github.com/users/jason2020/orgs","repos_url":"https://api.github.com/users/jason2020/repos","events_url":"https://api.github.com/users/jason2020/events{/privacy}","received_events_url":"https://api.github.com/users/jason2020/received_events","type":"User","site_admin":false},"assignees":[{"login":"jason2020","id":13056466,"node_id":"MDQ6VXNlcjEzMDU2NDY2","avatar_url":"https://avatars.githubusercontent.com/u/13056466?v=4","gravatar_id":"","url":"https://api.github.com/users/jason2020","html_url":"https://github.com/jason2020","followers_url":"https://api.github.com/users/jason2020/followers","following_url":"https://api.github.com/users/jason2020/following{/other_user}","gists_url":"https://api.github.com/users/jason2020/gists{/gist_id}","starred_url":"https://api.github.com/users/jason2020/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jason2020/subscriptions","organizations_url":"https://api.github.com/users/jason2020/orgs","repos_url":"https://api.github.com/users/jason2020/repos","events_url":"https://api.github.com/users/jason2020/events{/privacy}","received_events_url":"https://api.github.com/users/jason2020/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:12:30Z","updated_at":"2022-06-26T16:48:08Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/17/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/17/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/16","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/16/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/16/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/16/events","html_url":"https://github.com/uclaacm/linux-lab/issues/16","id":1284728587,"node_id":"I_kwDOHjYvSs5Mk2cL","number":16,"title":"set up Piping / IO Redirection page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"ArushRam","id":60648382,"node_id":"MDQ6VXNlcjYwNjQ4Mzgy","avatar_url":"https://avatars.githubusercontent.com/u/60648382?v=4","gravatar_id":"","url":"https://api.github.com/users/ArushRam","html_url":"https://github.com/ArushRam","followers_url":"https://api.github.com/users/ArushRam/followers","following_url":"https://api.github.com/users/ArushRam/following{/other_user}","gists_url":"https://api.github.com/users/ArushRam/gists{/gist_id}","starred_url":"https://api.github.com/users/ArushRam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ArushRam/subscriptions","organizations_url":"https://api.github.com/users/ArushRam/orgs","repos_url":"https://api.github.com/users/ArushRam/repos","events_url":"https://api.github.com/users/ArushRam/events{/privacy}","received_events_url":"https://api.github.com/users/ArushRam/received_events","type":"User","site_admin":false},"assignees":[{"login":"ArushRam","id":60648382,"node_id":"MDQ6VXNlcjYwNjQ4Mzgy","avatar_url":"https://avatars.githubusercontent.com/u/60648382?v=4","gravatar_id":"","url":"https://api.github.com/users/ArushRam","html_url":"https://github.com/ArushRam","followers_url":"https://api.github.com/users/ArushRam/followers","following_url":"https://api.github.com/users/ArushRam/following{/other_user}","gists_url":"https://api.github.com/users/ArushRam/gists{/gist_id}","starred_url":"https://api.github.com/users/ArushRam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ArushRam/subscriptions","organizations_url":"https://api.github.com/users/ArushRam/orgs","repos_url":"https://api.github.com/users/ArushRam/repos","events_url":"https://api.github.com/users/ArushRam/events{/privacy}","received_events_url":"https://api.github.com/users/ArushRam/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:12:18Z","updated_at":"2022-06-26T01:23:42Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/16/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/16/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/15","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/15/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/15/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/15/events","html_url":"https://github.com/uclaacm/linux-lab/issues/15","id":1284728550,"node_id":"I_kwDOHjYvSs5Mk2bm","number":15,"title":"set up Creation and Deletion page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"snigdha-kansal","id":93846021,"node_id":"U_kgDOBZf6BQ","avatar_url":"https://avatars.githubusercontent.com/u/93846021?v=4","gravatar_id":"","url":"https://api.github.com/users/snigdha-kansal","html_url":"https://github.com/snigdha-kansal","followers_url":"https://api.github.com/users/snigdha-kansal/followers","following_url":"https://api.github.com/users/snigdha-kansal/following{/other_user}","gists_url":"https://api.github.com/users/snigdha-kansal/gists{/gist_id}","starred_url":"https://api.github.com/users/snigdha-kansal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/snigdha-kansal/subscriptions","organizations_url":"https://api.github.com/users/snigdha-kansal/orgs","repos_url":"https://api.github.com/users/snigdha-kansal/repos","events_url":"https://api.github.com/users/snigdha-kansal/events{/privacy}","received_events_url":"https://api.github.com/users/snigdha-kansal/received_events","type":"User","site_admin":false},"assignees":[{"login":"snigdha-kansal","id":93846021,"node_id":"U_kgDOBZf6BQ","avatar_url":"https://avatars.githubusercontent.com/u/93846021?v=4","gravatar_id":"","url":"https://api.github.com/users/snigdha-kansal","html_url":"https://github.com/snigdha-kansal","followers_url":"https://api.github.com/users/snigdha-kansal/followers","following_url":"https://api.github.com/users/snigdha-kansal/following{/other_user}","gists_url":"https://api.github.com/users/snigdha-kansal/gists{/gist_id}","starred_url":"https://api.github.com/users/snigdha-kansal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/snigdha-kansal/subscriptions","organizations_url":"https://api.github.com/users/snigdha-kansal/orgs","repos_url":"https://api.github.com/users/snigdha-kansal/repos","events_url":"https://api.github.com/users/snigdha-kansal/events{/privacy}","received_events_url":"https://api.github.com/users/snigdha-kansal/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:12:04Z","updated_at":"2022-06-26T01:48:17Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/15/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/15/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/14","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/14/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/14/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/14/events","html_url":"https://github.com/uclaacm/linux-lab/issues/14","id":1284728489,"node_id":"I_kwDOHjYvSs5Mk2ap","number":14,"title":"set up Moving Around the File System page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"r-mallick","id":102201814,"node_id":"U_kgDOBhd51g","avatar_url":"https://avatars.githubusercontent.com/u/102201814?v=4","gravatar_id":"","url":"https://api.github.com/users/r-mallick","html_url":"https://github.com/r-mallick","followers_url":"https://api.github.com/users/r-mallick/followers","following_url":"https://api.github.com/users/r-mallick/following{/other_user}","gists_url":"https://api.github.com/users/r-mallick/gists{/gist_id}","starred_url":"https://api.github.com/users/r-mallick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/r-mallick/subscriptions","organizations_url":"https://api.github.com/users/r-mallick/orgs","repos_url":"https://api.github.com/users/r-mallick/repos","events_url":"https://api.github.com/users/r-mallick/events{/privacy}","received_events_url":"https://api.github.com/users/r-mallick/received_events","type":"User","site_admin":false},"assignees":[{"login":"r-mallick","id":102201814,"node_id":"U_kgDOBhd51g","avatar_url":"https://avatars.githubusercontent.com/u/102201814?v=4","gravatar_id":"","url":"https://api.github.com/users/r-mallick","html_url":"https://github.com/r-mallick","followers_url":"https://api.github.com/users/r-mallick/followers","following_url":"https://api.github.com/users/r-mallick/following{/other_user}","gists_url":"https://api.github.com/users/r-mallick/gists{/gist_id}","starred_url":"https://api.github.com/users/r-mallick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/r-mallick/subscriptions","organizations_url":"https://api.github.com/users/r-mallick/orgs","repos_url":"https://api.github.com/users/r-mallick/repos","events_url":"https://api.github.com/users/r-mallick/events{/privacy}","received_events_url":"https://api.github.com/users/r-mallick/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:11:51Z","updated_at":"2022-06-26T12:02:13Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/14/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/14/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/13","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/13/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/13/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/13/events","html_url":"https://github.com/uclaacm/linux-lab/issues/13","id":1284728406,"node_id":"I_kwDOHjYvSs5Mk2ZW","number":13,"title":"set up Stationary Commands page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"vickyz223","id":84080001,"node_id":"MDQ6VXNlcjg0MDgwMDAx","avatar_url":"https://avatars.githubusercontent.com/u/84080001?v=4","gravatar_id":"","url":"https://api.github.com/users/vickyz223","html_url":"https://github.com/vickyz223","followers_url":"https://api.github.com/users/vickyz223/followers","following_url":"https://api.github.com/users/vickyz223/following{/other_user}","gists_url":"https://api.github.com/users/vickyz223/gists{/gist_id}","starred_url":"https://api.github.com/users/vickyz223/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vickyz223/subscriptions","organizations_url":"https://api.github.com/users/vickyz223/orgs","repos_url":"https://api.github.com/users/vickyz223/repos","events_url":"https://api.github.com/users/vickyz223/events{/privacy}","received_events_url":"https://api.github.com/users/vickyz223/received_events","type":"User","site_admin":false},"assignees":[{"login":"vickyz223","id":84080001,"node_id":"MDQ6VXNlcjg0MDgwMDAx","avatar_url":"https://avatars.githubusercontent.com/u/84080001?v=4","gravatar_id":"","url":"https://api.github.com/users/vickyz223","html_url":"https://github.com/vickyz223","followers_url":"https://api.github.com/users/vickyz223/followers","following_url":"https://api.github.com/users/vickyz223/following{/other_user}","gists_url":"https://api.github.com/users/vickyz223/gists{/gist_id}","starred_url":"https://api.github.com/users/vickyz223/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vickyz223/subscriptions","organizations_url":"https://api.github.com/users/vickyz223/orgs","repos_url":"https://api.github.com/users/vickyz223/repos","events_url":"https://api.github.com/users/vickyz223/events{/privacy}","received_events_url":"https://api.github.com/users/vickyz223/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:11:27Z","updated_at":"2022-06-26T11:30:50Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/13/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/13/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/12","repository_url":"https://api.github.com/repos/uclaacm/linux-lab","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/12/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/12/comments","events_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/12/events","html_url":"https://github.com/uclaacm/linux-lab/issues/12","id":1284728343,"node_id":"I_kwDOHjYvSs5Mk2YX","number":12,"title":"set up Intro page","user":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"labels":[{"id":4263629005,"node_id":"LA_kwDOHjYvSs7-IdDN","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":4263676775,"node_id":"LA_kwDOHjYvSs7-Iotn","url":"https://api.github.com/repos/uclaacm/linux-lab/labels/easy","name":"easy","color":"24E4D6","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"lzhou0714","id":92414245,"node_id":"U_kgDOBYIhJQ","avatar_url":"https://avatars.githubusercontent.com/u/92414245?v=4","gravatar_id":"","url":"https://api.github.com/users/lzhou0714","html_url":"https://github.com/lzhou0714","followers_url":"https://api.github.com/users/lzhou0714/followers","following_url":"https://api.github.com/users/lzhou0714/following{/other_user}","gists_url":"https://api.github.com/users/lzhou0714/gists{/gist_id}","starred_url":"https://api.github.com/users/lzhou0714/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lzhou0714/subscriptions","organizations_url":"https://api.github.com/users/lzhou0714/orgs","repos_url":"https://api.github.com/users/lzhou0714/repos","events_url":"https://api.github.com/users/lzhou0714/events{/privacy}","received_events_url":"https://api.github.com/users/lzhou0714/received_events","type":"User","site_admin":false},"assignees":[{"login":"lzhou0714","id":92414245,"node_id":"U_kgDOBYIhJQ","avatar_url":"https://avatars.githubusercontent.com/u/92414245?v=4","gravatar_id":"","url":"https://api.github.com/users/lzhou0714","html_url":"https://github.com/lzhou0714","followers_url":"https://api.github.com/users/lzhou0714/followers","following_url":"https://api.github.com/users/lzhou0714/following{/other_user}","gists_url":"https://api.github.com/users/lzhou0714/gists{/gist_id}","starred_url":"https://api.github.com/users/lzhou0714/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lzhou0714/subscriptions","organizations_url":"https://api.github.com/users/lzhou0714/orgs","repos_url":"https://api.github.com/users/lzhou0714/repos","events_url":"https://api.github.com/users/lzhou0714/events{/privacy}","received_events_url":"https://api.github.com/users/lzhou0714/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1","html_url":"https://github.com/uclaacm/linux-lab/milestone/1","labels_url":"https://api.github.com/repos/uclaacm/linux-lab/milestones/1/labels","id":8128718,"node_id":"MI_kwDOHjYvSs4AfAjO","number":1,"title":"Copy content info to app","description":"","creator":{"login":"zhangjuliet","id":65837446,"node_id":"MDQ6VXNlcjY1ODM3NDQ2","avatar_url":"https://avatars.githubusercontent.com/u/65837446?v=4","gravatar_id":"","url":"https://api.github.com/users/zhangjuliet","html_url":"https://github.com/zhangjuliet","followers_url":"https://api.github.com/users/zhangjuliet/followers","following_url":"https://api.github.com/users/zhangjuliet/following{/other_user}","gists_url":"https://api.github.com/users/zhangjuliet/gists{/gist_id}","starred_url":"https://api.github.com/users/zhangjuliet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zhangjuliet/subscriptions","organizations_url":"https://api.github.com/users/zhangjuliet/orgs","repos_url":"https://api.github.com/users/zhangjuliet/repos","events_url":"https://api.github.com/users/zhangjuliet/events{/privacy}","received_events_url":"https://api.github.com/users/zhangjuliet/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":1,"state":"open","created_at":"2022-06-25T19:10:26Z","updated_at":"2022-07-01T05:40:41Z","due_on":"2022-07-02T07:00:00Z","closed_at":null},"comments":0,"created_at":"2022-06-25T22:11:07Z","updated_at":"2022-06-26T08:19:22Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Copy over information from [content doc](https://docs.google.com/document/d/1mghYmm6xtcLe3yH3nJlJMktULYdo3xQKWVhQe6ADKkk/edit?usp=sharing) and feel free to add details / change content as necessary.\r\nFormat the page based on the Figma mockup. Here's the [lofi mockup](https://www.figma.com/file/i6o0IuYh3YoVkzojsW1zaS/linux-learning-lab?node-id=0%3A1) for now; we'll update with the hifi soon.","reactions":{"url":"https://api.github.com/repos/uclaacm/linux-lab/issues/12/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/linux-lab/issues/12/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"linux-lab","description":"","repo":"https://github.com/uclaacm/linux-lab","lang":"JavaScript","topics":[],"image":"/logo.png","alt":"ACM @ UCLA's Logo"},"repoURL":"https://api.github.com/repos/uclaacm/linux-lab"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/opensource/issues/118","repository_url":"https://api.github.com/repos/uclaacm/opensource","labels_url":"https://api.github.com/repos/uclaacm/opensource/issues/118/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/opensource/issues/118/comments","events_url":"https://api.github.com/repos/uclaacm/opensource/issues/118/events","html_url":"https://github.com/uclaacm/opensource/issues/118","id":1250243723,"node_id":"I_kwDOFbnmps5KhTSL","number":118,"title":"Working on ucla-opensource page!","user":{"login":"matthewcn56","id":65370631,"node_id":"MDQ6VXNlcjY1MzcwNjMx","avatar_url":"https://avatars.githubusercontent.com/u/65370631?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewcn56","html_url":"https://github.com/matthewcn56","followers_url":"https://api.github.com/users/matthewcn56/followers","following_url":"https://api.github.com/users/matthewcn56/following{/other_user}","gists_url":"https://api.github.com/users/matthewcn56/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewcn56/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewcn56/subscriptions","organizations_url":"https://api.github.com/users/matthewcn56/orgs","repos_url":"https://api.github.com/users/matthewcn56/repos","events_url":"https://api.github.com/users/matthewcn56/events{/privacy}","received_events_url":"https://api.github.com/users/matthewcn56/received_events","type":"User","site_admin":false},"labels":[{"id":2973665525,"node_id":"MDU6TGFiZWwyOTczNjY1NTI1","url":"https://api.github.com/repos/uclaacm/opensource/labels/enhancement","name":"enhancement","color":"a2eeef","default":true,"description":"New feature or request"},{"id":2973665526,"node_id":"MDU6TGFiZWwyOTczNjY1NTI2","url":"https://api.github.com/repos/uclaacm/opensource/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"JCamyre","id":68767176,"node_id":"MDQ6VXNlcjY4NzY3MTc2","avatar_url":"https://avatars.githubusercontent.com/u/68767176?v=4","gravatar_id":"","url":"https://api.github.com/users/JCamyre","html_url":"https://github.com/JCamyre","followers_url":"https://api.github.com/users/JCamyre/followers","following_url":"https://api.github.com/users/JCamyre/following{/other_user}","gists_url":"https://api.github.com/users/JCamyre/gists{/gist_id}","starred_url":"https://api.github.com/users/JCamyre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JCamyre/subscriptions","organizations_url":"https://api.github.com/users/JCamyre/orgs","repos_url":"https://api.github.com/users/JCamyre/repos","events_url":"https://api.github.com/users/JCamyre/events{/privacy}","received_events_url":"https://api.github.com/users/JCamyre/received_events","type":"User","site_admin":false},"assignees":[{"login":"JCamyre","id":68767176,"node_id":"MDQ6VXNlcjY4NzY3MTc2","avatar_url":"https://avatars.githubusercontent.com/u/68767176?v=4","gravatar_id":"","url":"https://api.github.com/users/JCamyre","html_url":"https://github.com/JCamyre","followers_url":"https://api.github.com/users/JCamyre/followers","following_url":"https://api.github.com/users/JCamyre/following{/other_user}","gists_url":"https://api.github.com/users/JCamyre/gists{/gist_id}","starred_url":"https://api.github.com/users/JCamyre/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JCamyre/subscriptions","organizations_url":"https://api.github.com/users/JCamyre/orgs","repos_url":"https://api.github.com/users/JCamyre/repos","events_url":"https://api.github.com/users/JCamyre/events{/privacy}","received_events_url":"https://api.github.com/users/JCamyre/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2022-05-27T01:34:55Z","updated_at":"2022-05-27T01:34:55Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Short and sweet: Add a `ucla-opensource` page, with the tag `ucla` up on the top of the navbar, and make a small blurb about what the page will be about (it should show all projects with the `ucla-opensource` topic tag), and we can make it similar to the actual projects page! be sure to say that this page will be a work in progress","reactions":{"url":"https://api.github.com/repos/uclaacm/opensource/issues/118/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/opensource/issues/118/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/opensource/issues/112","repository_url":"https://api.github.com/repos/uclaacm/opensource","labels_url":"https://api.github.com/repos/uclaacm/opensource/issues/112/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/opensource/issues/112/comments","events_url":"https://api.github.com/repos/uclaacm/opensource/issues/112/events","html_url":"https://github.com/uclaacm/opensource/issues/112","id":1222267599,"node_id":"I_kwDOFbnmps5I2lLP","number":112,"title":"Remove dependabot from \"what we've been doing recently...\"","user":{"login":"advaithg","id":67539191,"node_id":"MDQ6VXNlcjY3NTM5MTkx","avatar_url":"https://avatars.githubusercontent.com/u/67539191?v=4","gravatar_id":"","url":"https://api.github.com/users/advaithg","html_url":"https://github.com/advaithg","followers_url":"https://api.github.com/users/advaithg/followers","following_url":"https://api.github.com/users/advaithg/following{/other_user}","gists_url":"https://api.github.com/users/advaithg/gists{/gist_id}","starred_url":"https://api.github.com/users/advaithg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/advaithg/subscriptions","organizations_url":"https://api.github.com/users/advaithg/orgs","repos_url":"https://api.github.com/users/advaithg/repos","events_url":"https://api.github.com/users/advaithg/events{/privacy}","received_events_url":"https://api.github.com/users/advaithg/received_events","type":"User","site_admin":false},"labels":[{"id":2973665526,"node_id":"MDU6TGFiZWwyOTczNjY1NTI2","url":"https://api.github.com/repos/uclaacm/opensource/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"0Kwanele0","id":82277005,"node_id":"MDQ6VXNlcjgyMjc3MDA1","avatar_url":"https://avatars.githubusercontent.com/u/82277005?v=4","gravatar_id":"","url":"https://api.github.com/users/0Kwanele0","html_url":"https://github.com/0Kwanele0","followers_url":"https://api.github.com/users/0Kwanele0/followers","following_url":"https://api.github.com/users/0Kwanele0/following{/other_user}","gists_url":"https://api.github.com/users/0Kwanele0/gists{/gist_id}","starred_url":"https://api.github.com/users/0Kwanele0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/0Kwanele0/subscriptions","organizations_url":"https://api.github.com/users/0Kwanele0/orgs","repos_url":"https://api.github.com/users/0Kwanele0/repos","events_url":"https://api.github.com/users/0Kwanele0/events{/privacy}","received_events_url":"https://api.github.com/users/0Kwanele0/received_events","type":"User","site_admin":false},"assignees":[{"login":"0Kwanele0","id":82277005,"node_id":"MDQ6VXNlcjgyMjc3MDA1","avatar_url":"https://avatars.githubusercontent.com/u/82277005?v=4","gravatar_id":"","url":"https://api.github.com/users/0Kwanele0","html_url":"https://github.com/0Kwanele0","followers_url":"https://api.github.com/users/0Kwanele0/followers","following_url":"https://api.github.com/users/0Kwanele0/following{/other_user}","gists_url":"https://api.github.com/users/0Kwanele0/gists{/gist_id}","starred_url":"https://api.github.com/users/0Kwanele0/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/0Kwanele0/subscriptions","organizations_url":"https://api.github.com/users/0Kwanele0/orgs","repos_url":"https://api.github.com/users/0Kwanele0/repos","events_url":"https://api.github.com/users/0Kwanele0/events{/privacy}","received_events_url":"https://api.github.com/users/0Kwanele0/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2022-05-01T19:56:25Z","updated_at":"2022-05-05T01:24:17Z","closed_at":null,"author_association":"NONE","active_lock_reason":null,"body":"Something I've noticed is that dependabot tends to take over our recent activity a lot of the time, and I think we'd rather highlight people's work than the PRs made by the bot!\r\n\r\nOne way I can think of doing this is after getting `recentEvents` from the octokit API in `index.tsx`, iterate through and remove events with dependabot as the author (you'd have to look into what the API returns to do this). Feel free to implement it however you'd like though - especially if you can think of a more efficient way to do it!","reactions":{"url":"https://api.github.com/repos/uclaacm/opensource/issues/112/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/opensource/issues/112/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/opensource/issues/75","repository_url":"https://api.github.com/repos/uclaacm/opensource","labels_url":"https://api.github.com/repos/uclaacm/opensource/issues/75/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/opensource/issues/75/comments","events_url":"https://api.github.com/repos/uclaacm/opensource/issues/75/events","html_url":"https://github.com/uclaacm/opensource/issues/75","id":1096522219,"node_id":"I_kwDOFbnmps5BW5nr","number":75,"title":"add (composable) filters for projects","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":2973665526,"node_id":"MDU6TGFiZWwyOTczNjY1NTI2","url":"https://api.github.com/repos/uclaacm/opensource/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"ColbertX","id":79346706,"node_id":"MDQ6VXNlcjc5MzQ2NzA2","avatar_url":"https://avatars.githubusercontent.com/u/79346706?v=4","gravatar_id":"","url":"https://api.github.com/users/ColbertX","html_url":"https://github.com/ColbertX","followers_url":"https://api.github.com/users/ColbertX/followers","following_url":"https://api.github.com/users/ColbertX/following{/other_user}","gists_url":"https://api.github.com/users/ColbertX/gists{/gist_id}","starred_url":"https://api.github.com/users/ColbertX/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ColbertX/subscriptions","organizations_url":"https://api.github.com/users/ColbertX/orgs","repos_url":"https://api.github.com/users/ColbertX/repos","events_url":"https://api.github.com/users/ColbertX/events{/privacy}","received_events_url":"https://api.github.com/users/ColbertX/received_events","type":"User","site_admin":false},"assignees":[{"login":"ColbertX","id":79346706,"node_id":"MDQ6VXNlcjc5MzQ2NzA2","avatar_url":"https://avatars.githubusercontent.com/u/79346706?v=4","gravatar_id":"","url":"https://api.github.com/users/ColbertX","html_url":"https://github.com/ColbertX","followers_url":"https://api.github.com/users/ColbertX/followers","following_url":"https://api.github.com/users/ColbertX/following{/other_user}","gists_url":"https://api.github.com/users/ColbertX/gists{/gist_id}","starred_url":"https://api.github.com/users/ColbertX/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ColbertX/subscriptions","organizations_url":"https://api.github.com/users/ColbertX/orgs","repos_url":"https://api.github.com/users/ColbertX/repos","events_url":"https://api.github.com/users/ColbertX/events{/privacy}","received_events_url":"https://api.github.com/users/ColbertX/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2022-01-07T17:32:45Z","updated_at":"2022-03-02T02:29:03Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"With #57 on the horizon, we are going to have *a lot* of projects. It might get hard to sift through as the end user, which is where a filtering system would help!\r\n\r\nThe simplest filter to implement is probably off of language. I would suggest starting there; to implement it, I would ask that you:\r\n\r\n1. Create a UI element (it's okay if the styling isn't perfect)\r\n2. Devise some mechanism to perform the filtering - noting that it could get more complicated once we add more filters\r\n3. Add some sort of state to manage this\r\n4. *Optional*: save the result of the filter to the URL, so you can \"send\" someone a filter with a link\r\n\r\nI would suggest you either branch off of #57 or wait for it to resolve, since it changes the language structure.","reactions":{"url":"https://api.github.com/repos/uclaacm/opensource/issues/75/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/opensource/issues/75/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"opensource","description":"opensource @ acm, work-in-progress","link":"https://opensource.uclaacm.com","repo":"https://github.com/uclaacm/opensource","lang":"TypeScript","topics":[],"image":"/logo.png","alt":"ACM @ UCLA's Logo"},"repoURL":"https://api.github.com/repos/uclaacm/opensource"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/413","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/413/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/413/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/413/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/413","id":1224759104,"node_id":"I_kwDOC3PB7s5JAFdA","number":413,"title":"Update the general board and dev board from the 21-22 board to the 22-23 board","user":{"login":"Nhamakami7","id":25124783,"node_id":"MDQ6VXNlcjI1MTI0Nzgz","avatar_url":"https://avatars.githubusercontent.com/u/25124783?v=4","gravatar_id":"","url":"https://api.github.com/users/Nhamakami7","html_url":"https://github.com/Nhamakami7","followers_url":"https://api.github.com/users/Nhamakami7/followers","following_url":"https://api.github.com/users/Nhamakami7/following{/other_user}","gists_url":"https://api.github.com/users/Nhamakami7/gists{/gist_id}","starred_url":"https://api.github.com/users/Nhamakami7/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Nhamakami7/subscriptions","organizations_url":"https://api.github.com/users/Nhamakami7/orgs","repos_url":"https://api.github.com/users/Nhamakami7/repos","events_url":"https://api.github.com/users/Nhamakami7/events{/privacy}","received_events_url":"https://api.github.com/users/Nhamakami7/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"calvintuantran","id":102400986,"node_id":"U_kgDOBhqD2g","avatar_url":"https://avatars.githubusercontent.com/u/102400986?v=4","gravatar_id":"","url":"https://api.github.com/users/calvintuantran","html_url":"https://github.com/calvintuantran","followers_url":"https://api.github.com/users/calvintuantran/followers","following_url":"https://api.github.com/users/calvintuantran/following{/other_user}","gists_url":"https://api.github.com/users/calvintuantran/gists{/gist_id}","starred_url":"https://api.github.com/users/calvintuantran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calvintuantran/subscriptions","organizations_url":"https://api.github.com/users/calvintuantran/orgs","repos_url":"https://api.github.com/users/calvintuantran/repos","events_url":"https://api.github.com/users/calvintuantran/events{/privacy}","received_events_url":"https://api.github.com/users/calvintuantran/received_events","type":"User","site_admin":false},"assignees":[{"login":"calvintuantran","id":102400986,"node_id":"U_kgDOBhqD2g","avatar_url":"https://avatars.githubusercontent.com/u/102400986?v=4","gravatar_id":"","url":"https://api.github.com/users/calvintuantran","html_url":"https://github.com/calvintuantran","followers_url":"https://api.github.com/users/calvintuantran/followers","following_url":"https://api.github.com/users/calvintuantran/following{/other_user}","gists_url":"https://api.github.com/users/calvintuantran/gists{/gist_id}","starred_url":"https://api.github.com/users/calvintuantran/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/calvintuantran/subscriptions","organizations_url":"https://api.github.com/users/calvintuantran/orgs","repos_url":"https://api.github.com/users/calvintuantran/repos","events_url":"https://api.github.com/users/calvintuantran/events{/privacy}","received_events_url":"https://api.github.com/users/calvintuantran/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2022-05-03T23:17:43Z","updated_at":"2022-05-11T01:28:01Z","closed_at":null,"author_association":"COLLABORATOR","active_lock_reason":null,"body":"Please update the information on the TLA team page from the old boards to the new boards! I believe this can be done by updating the .md files in the team directory of the project.\r\nPage on static site: https://teachla.uclaacm.com/team\r\n","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/413/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/413/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/378","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/378/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/378/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/378/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/378","id":1036068329,"node_id":"I_kwDOC3PB7s49wSXp","number":378,"title":"Update About Page","user":{"login":"vivianha534","id":56574435,"node_id":"MDQ6VXNlcjU2NTc0NDM1","avatar_url":"https://avatars.githubusercontent.com/u/56574435?v=4","gravatar_id":"","url":"https://api.github.com/users/vivianha534","html_url":"https://github.com/vivianha534","followers_url":"https://api.github.com/users/vivianha534/followers","following_url":"https://api.github.com/users/vivianha534/following{/other_user}","gists_url":"https://api.github.com/users/vivianha534/gists{/gist_id}","starred_url":"https://api.github.com/users/vivianha534/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivianha534/subscriptions","organizations_url":"https://api.github.com/users/vivianha534/orgs","repos_url":"https://api.github.com/users/vivianha534/repos","events_url":"https://api.github.com/users/vivianha534/events{/privacy}","received_events_url":"https://api.github.com/users/vivianha534/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2021-10-26T09:39:16Z","updated_at":"2021-10-27T21:35:50Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Currently the content on our about page is really dense. This is an accessibility issue because when screen readers are reading out all of this information, it's a lot to take in. (Aside: a really shallow explanation of screen readers is that they are devices that read out the text on pages for people who are visually impared. For more info checkout what the American Foundation for the Blind have to say about [screen readers](https://www.afb.org/blindness-and-low-vision/using-technology/assistive-technology-products/screen-readers)) \r\n\r\nIn order to decrease the density of our content, our JEDI director Christine has[ created less dense content](https://docs.google.com/document/d/1WTVjotUZWFWODqyufoNdZBZ9pFxDgla_xEvrYaZVKEU/edit?usp=sharing).\r\n\r\nTask: \r\n- Update the about page according to the google document attached above.\r\n- File that will need to be changed is about.html\r\n- HTML: update p tags, add links via anchor tags\r\n","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/378/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/378/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/377","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/377/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/377/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/377/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/377","id":1036063222,"node_id":"I_kwDOC3PB7s49wRH2","number":377,"title":"Update Home Page Content","user":{"login":"vivianha534","id":56574435,"node_id":"MDQ6VXNlcjU2NTc0NDM1","avatar_url":"https://avatars.githubusercontent.com/u/56574435?v=4","gravatar_id":"","url":"https://api.github.com/users/vivianha534","html_url":"https://github.com/vivianha534","followers_url":"https://api.github.com/users/vivianha534/followers","following_url":"https://api.github.com/users/vivianha534/following{/other_user}","gists_url":"https://api.github.com/users/vivianha534/gists{/gist_id}","starred_url":"https://api.github.com/users/vivianha534/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivianha534/subscriptions","organizations_url":"https://api.github.com/users/vivianha534/orgs","repos_url":"https://api.github.com/users/vivianha534/repos","events_url":"https://api.github.com/users/vivianha534/events{/privacy}","received_events_url":"https://api.github.com/users/vivianha534/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-10-26T09:33:50Z","updated_at":"2021-10-26T23:08:54Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Currently the content on our home page is really dense. This is an accessibility issue because when screen readers are reading out all of this information, it's a lot to take in. (Aside: a really shallow explanation of screen readers is that they are devices that read out the text on pages for people who are visually impared. For more info checkout what the American Foundation for the Blind have to say about [screen readers](https://www.afb.org/blindness-and-low-vision/using-technology/assistive-technology-products/screen-readers)) \r\n\r\nIn order to decrease the density of our content, our JEDI director Christine has[ created less dense content](https://docs.google.com/document/d/1u_b6KMjq-mUeEfPI5sC70PXI4psbWpqhjkzvBXsSLKU/edit?usp=sharing).\r\n\r\nTask: Update the home page according to the google document attached above. File that will need to be changed is index.html","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/377/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/377/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/375","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/375/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/375/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/375/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/375","id":1034528416,"node_id":"I_kwDOC3PB7s49qaag","number":375,"title":"Update App Dev Lead","user":{"login":"vivianha534","id":56574435,"node_id":"MDQ6VXNlcjU2NTc0NDM1","avatar_url":"https://avatars.githubusercontent.com/u/56574435?v=4","gravatar_id":"","url":"https://api.github.com/users/vivianha534","html_url":"https://github.com/vivianha534","followers_url":"https://api.github.com/users/vivianha534/followers","following_url":"https://api.github.com/users/vivianha534/following{/other_user}","gists_url":"https://api.github.com/users/vivianha534/gists{/gist_id}","starred_url":"https://api.github.com/users/vivianha534/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivianha534/subscriptions","organizations_url":"https://api.github.com/users/vivianha534/orgs","repos_url":"https://api.github.com/users/vivianha534/repos","events_url":"https://api.github.com/users/vivianha534/events{/privacy}","received_events_url":"https://api.github.com/users/vivianha534/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"josephramirezgit","id":87892893,"node_id":"MDQ6VXNlcjg3ODkyODkz","avatar_url":"https://avatars.githubusercontent.com/u/87892893?v=4","gravatar_id":"","url":"https://api.github.com/users/josephramirezgit","html_url":"https://github.com/josephramirezgit","followers_url":"https://api.github.com/users/josephramirezgit/followers","following_url":"https://api.github.com/users/josephramirezgit/following{/other_user}","gists_url":"https://api.github.com/users/josephramirezgit/gists{/gist_id}","starred_url":"https://api.github.com/users/josephramirezgit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josephramirezgit/subscriptions","organizations_url":"https://api.github.com/users/josephramirezgit/orgs","repos_url":"https://api.github.com/users/josephramirezgit/repos","events_url":"https://api.github.com/users/josephramirezgit/events{/privacy}","received_events_url":"https://api.github.com/users/josephramirezgit/received_events","type":"User","site_admin":false},"assignees":[{"login":"josephramirezgit","id":87892893,"node_id":"MDQ6VXNlcjg3ODkyODkz","avatar_url":"https://avatars.githubusercontent.com/u/87892893?v=4","gravatar_id":"","url":"https://api.github.com/users/josephramirezgit","html_url":"https://github.com/josephramirezgit","followers_url":"https://api.github.com/users/josephramirezgit/followers","following_url":"https://api.github.com/users/josephramirezgit/following{/other_user}","gists_url":"https://api.github.com/users/josephramirezgit/gists{/gist_id}","starred_url":"https://api.github.com/users/josephramirezgit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josephramirezgit/subscriptions","organizations_url":"https://api.github.com/users/josephramirezgit/orgs","repos_url":"https://api.github.com/users/josephramirezgit/repos","events_url":"https://api.github.com/users/josephramirezgit/events{/privacy}","received_events_url":"https://api.github.com/users/josephramirezgit/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-10-24T22:21:28Z","updated_at":"2021-10-25T20:18:59Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"On our classes page, the current lead for App Dev with React Native is Chase. Change it to be Matt Nieva\\ So the new text should say:\r\n\r\nhave questions? contact our curriculum lead Matt!\r\n\r\nMatt's name should link out to his individual page: https://teachla.uclaacm.com/team/mnieva\r\n\r\nOur classes page can be found here: https://teachla.uclaacm.com/classes\r\n\r\nHint: Check out how \"have questions? contact our curriculum lead Nikhil!\" is implemented\r\nHint2: Take a look at classes.html\r\n","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/375/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/375/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/347","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/347/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/347/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/347/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/347","id":895786712,"node_id":"MDU6SXNzdWU4OTU3ODY3MTI=","number":347,"title":"Link Classes in the About Page to Class Page","user":{"login":"vivianha534","id":56574435,"node_id":"MDQ6VXNlcjU2NTc0NDM1","avatar_url":"https://avatars.githubusercontent.com/u/56574435?v=4","gravatar_id":"","url":"https://api.github.com/users/vivianha534","html_url":"https://github.com/vivianha534","followers_url":"https://api.github.com/users/vivianha534/followers","following_url":"https://api.github.com/users/vivianha534/following{/other_user}","gists_url":"https://api.github.com/users/vivianha534/gists{/gist_id}","starred_url":"https://api.github.com/users/vivianha534/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivianha534/subscriptions","organizations_url":"https://api.github.com/users/vivianha534/orgs","repos_url":"https://api.github.com/users/vivianha534/repos","events_url":"https://api.github.com/users/vivianha534/events{/privacy}","received_events_url":"https://api.github.com/users/vivianha534/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"cjmaduno","id":40917956,"node_id":"MDQ6VXNlcjQwOTE3OTU2","avatar_url":"https://avatars.githubusercontent.com/u/40917956?v=4","gravatar_id":"","url":"https://api.github.com/users/cjmaduno","html_url":"https://github.com/cjmaduno","followers_url":"https://api.github.com/users/cjmaduno/followers","following_url":"https://api.github.com/users/cjmaduno/following{/other_user}","gists_url":"https://api.github.com/users/cjmaduno/gists{/gist_id}","starred_url":"https://api.github.com/users/cjmaduno/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cjmaduno/subscriptions","organizations_url":"https://api.github.com/users/cjmaduno/orgs","repos_url":"https://api.github.com/users/cjmaduno/repos","events_url":"https://api.github.com/users/cjmaduno/events{/privacy}","received_events_url":"https://api.github.com/users/cjmaduno/received_events","type":"User","site_admin":false},"assignees":[{"login":"cjmaduno","id":40917956,"node_id":"MDQ6VXNlcjQwOTE3OTU2","avatar_url":"https://avatars.githubusercontent.com/u/40917956?v=4","gravatar_id":"","url":"https://api.github.com/users/cjmaduno","html_url":"https://github.com/cjmaduno","followers_url":"https://api.github.com/users/cjmaduno/followers","following_url":"https://api.github.com/users/cjmaduno/following{/other_user}","gists_url":"https://api.github.com/users/cjmaduno/gists{/gist_id}","starred_url":"https://api.github.com/users/cjmaduno/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cjmaduno/subscriptions","organizations_url":"https://api.github.com/users/cjmaduno/orgs","repos_url":"https://api.github.com/users/cjmaduno/repos","events_url":"https://api.github.com/users/cjmaduno/events{/privacy}","received_events_url":"https://api.github.com/users/cjmaduno/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-05-19T19:07:37Z","updated_at":"2021-11-10T02:28:34Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Currently North Hollywood Web & Mobile App Dev's class is linked to its corresponding class pages. However, the rest of the classes are not linked to their class pages.\r\n\r\n- Link the rest of the classes to their class pages\r\n - If you need a refrence, look at how North Hollywood has the classes linked\r\n - You'll most likely need to modify the about.html file\r\n- Class pages can be found: https://teachla.uclaacm.com/classes\r\n\r\nThis ticket should also update the class schedules on the about page. Follow the existing format on the about page.\r\n- Emerson - Wednesdays 8-8:50am\r\n- Western Ave T.E.C.H. Magnet - Tuesdays 10:19-11:49am\r\n- North Hollywood High (AI) - Mondays 8-8:57am (likely to change to Thursdays 8-8:57am)\r\n- North Hollywood High (React Native) - Not finalized \r\n- Scratch- Fridays 12:40-1:30pm (may change)","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/347/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/347/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/340","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/340/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/340/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/340/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/340","id":875101389,"node_id":"MDU6SXNzdWU4NzUxMDEzODk=","number":340,"title":"Update Careers in CS and AI ethics","user":{"login":"vivianha534","id":56574435,"node_id":"MDQ6VXNlcjU2NTc0NDM1","avatar_url":"https://avatars.githubusercontent.com/u/56574435?v=4","gravatar_id":"","url":"https://api.github.com/users/vivianha534","html_url":"https://github.com/vivianha534","followers_url":"https://api.github.com/users/vivianha534/followers","following_url":"https://api.github.com/users/vivianha534/following{/other_user}","gists_url":"https://api.github.com/users/vivianha534/gists{/gist_id}","starred_url":"https://api.github.com/users/vivianha534/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivianha534/subscriptions","organizations_url":"https://api.github.com/users/vivianha534/orgs","repos_url":"https://api.github.com/users/vivianha534/repos","events_url":"https://api.github.com/users/vivianha534/events{/privacy}","received_events_url":"https://api.github.com/users/vivianha534/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"celebilaw","id":72050500,"node_id":"MDQ6VXNlcjcyMDUwNTAw","avatar_url":"https://avatars.githubusercontent.com/u/72050500?v=4","gravatar_id":"","url":"https://api.github.com/users/celebilaw","html_url":"https://github.com/celebilaw","followers_url":"https://api.github.com/users/celebilaw/followers","following_url":"https://api.github.com/users/celebilaw/following{/other_user}","gists_url":"https://api.github.com/users/celebilaw/gists{/gist_id}","starred_url":"https://api.github.com/users/celebilaw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/celebilaw/subscriptions","organizations_url":"https://api.github.com/users/celebilaw/orgs","repos_url":"https://api.github.com/users/celebilaw/repos","events_url":"https://api.github.com/users/celebilaw/events{/privacy}","received_events_url":"https://api.github.com/users/celebilaw/received_events","type":"User","site_admin":false},"assignees":[{"login":"celebilaw","id":72050500,"node_id":"MDQ6VXNlcjcyMDUwNTAw","avatar_url":"https://avatars.githubusercontent.com/u/72050500?v=4","gravatar_id":"","url":"https://api.github.com/users/celebilaw","html_url":"https://github.com/celebilaw","followers_url":"https://api.github.com/users/celebilaw/followers","following_url":"https://api.github.com/users/celebilaw/following{/other_user}","gists_url":"https://api.github.com/users/celebilaw/gists{/gist_id}","starred_url":"https://api.github.com/users/celebilaw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/celebilaw/subscriptions","organizations_url":"https://api.github.com/users/celebilaw/orgs","repos_url":"https://api.github.com/users/celebilaw/repos","events_url":"https://api.github.com/users/celebilaw/events{/privacy}","received_events_url":"https://api.github.com/users/celebilaw/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-05-04T04:52:45Z","updated_at":"2021-10-27T21:36:48Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Create an archive for AI Ethics similar to Careers in CS which contains\r\n- Facial Recognition @ Bernstein High School (WildHacks Hackathon) - 2021\r\n- Facial Recognition @ University High School - 2021\r\n\r\nAdd the following to the existing Careers in CS archive\r\n- Careers in CS @ Bernstein High School (WildHacks Hackathon) - 2021\r\n\r\nFor reference the archive for the AI Ethics page will look really similar to CS Careers in CS and the code for that can be found in career-pathways.html\r\n","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/340/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/340/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/312","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/312/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/312/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/312/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/312","id":854034055,"node_id":"MDU6SXNzdWU4NTQwMzQwNTU=","number":312,"title":"Add React Native Lessons","user":{"login":"vivianha534","id":56574435,"node_id":"MDQ6VXNlcjU2NTc0NDM1","avatar_url":"https://avatars.githubusercontent.com/u/56574435?v=4","gravatar_id":"","url":"https://api.github.com/users/vivianha534","html_url":"https://github.com/vivianha534","followers_url":"https://api.github.com/users/vivianha534/followers","following_url":"https://api.github.com/users/vivianha534/following{/other_user}","gists_url":"https://api.github.com/users/vivianha534/gists{/gist_id}","starred_url":"https://api.github.com/users/vivianha534/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vivianha534/subscriptions","organizations_url":"https://api.github.com/users/vivianha534/orgs","repos_url":"https://api.github.com/users/vivianha534/repos","events_url":"https://api.github.com/users/vivianha534/events{/privacy}","received_events_url":"https://api.github.com/users/vivianha534/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"josephramirezgit","id":87892893,"node_id":"MDQ6VXNlcjg3ODkyODkz","avatar_url":"https://avatars.githubusercontent.com/u/87892893?v=4","gravatar_id":"","url":"https://api.github.com/users/josephramirezgit","html_url":"https://github.com/josephramirezgit","followers_url":"https://api.github.com/users/josephramirezgit/followers","following_url":"https://api.github.com/users/josephramirezgit/following{/other_user}","gists_url":"https://api.github.com/users/josephramirezgit/gists{/gist_id}","starred_url":"https://api.github.com/users/josephramirezgit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josephramirezgit/subscriptions","organizations_url":"https://api.github.com/users/josephramirezgit/orgs","repos_url":"https://api.github.com/users/josephramirezgit/repos","events_url":"https://api.github.com/users/josephramirezgit/events{/privacy}","received_events_url":"https://api.github.com/users/josephramirezgit/received_events","type":"User","site_admin":false},"assignees":[{"login":"josephramirezgit","id":87892893,"node_id":"MDQ6VXNlcjg3ODkyODkz","avatar_url":"https://avatars.githubusercontent.com/u/87892893?v=4","gravatar_id":"","url":"https://api.github.com/users/josephramirezgit","html_url":"https://github.com/josephramirezgit","followers_url":"https://api.github.com/users/josephramirezgit/followers","following_url":"https://api.github.com/users/josephramirezgit/following{/other_user}","gists_url":"https://api.github.com/users/josephramirezgit/gists{/gist_id}","starred_url":"https://api.github.com/users/josephramirezgit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/josephramirezgit/subscriptions","organizations_url":"https://api.github.com/users/josephramirezgit/orgs","repos_url":"https://api.github.com/users/josephramirezgit/repos","events_url":"https://api.github.com/users/josephramirezgit/events{/privacy}","received_events_url":"https://api.github.com/users/josephramirezgit/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-04-09T00:15:10Z","updated_at":"2021-10-28T03:25:47Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Currently our React Native Class Page is not up to date. https://teachla.uclaacm.com/classes/rnative\r\n- In order to make it up to date, you will need to create new files in the _rnative directory for each of the missing lessons\r\n- Here's a link to the github repository with all of the lesson plans: https://github.com/uclaacm/react-native-course-20-21\r\n- You can use 02-intro-html-css.md as an example of how you should add new lessons","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/312/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/312/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/245","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/245/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/245/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/245/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/245","id":801645108,"node_id":"MDU6SXNzdWU4MDE2NDUxMDg=","number":245,"title":"Change \"More info\" lead to check for blog posts","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"kmpablo","id":77227941,"node_id":"MDQ6VXNlcjc3MjI3OTQx","avatar_url":"https://avatars.githubusercontent.com/u/77227941?v=4","gravatar_id":"","url":"https://api.github.com/users/kmpablo","html_url":"https://github.com/kmpablo","followers_url":"https://api.github.com/users/kmpablo/followers","following_url":"https://api.github.com/users/kmpablo/following{/other_user}","gists_url":"https://api.github.com/users/kmpablo/gists{/gist_id}","starred_url":"https://api.github.com/users/kmpablo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kmpablo/subscriptions","organizations_url":"https://api.github.com/users/kmpablo/orgs","repos_url":"https://api.github.com/users/kmpablo/repos","events_url":"https://api.github.com/users/kmpablo/events{/privacy}","received_events_url":"https://api.github.com/users/kmpablo/received_events","type":"User","site_admin":false},"assignees":[{"login":"kmpablo","id":77227941,"node_id":"MDQ6VXNlcjc3MjI3OTQx","avatar_url":"https://avatars.githubusercontent.com/u/77227941?v=4","gravatar_id":"","url":"https://api.github.com/users/kmpablo","html_url":"https://github.com/kmpablo","followers_url":"https://api.github.com/users/kmpablo/followers","following_url":"https://api.github.com/users/kmpablo/following{/other_user}","gists_url":"https://api.github.com/users/kmpablo/gists{/gist_id}","starred_url":"https://api.github.com/users/kmpablo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kmpablo/subscriptions","organizations_url":"https://api.github.com/users/kmpablo/orgs","repos_url":"https://api.github.com/users/kmpablo/repos","events_url":"https://api.github.com/users/kmpablo/events{/privacy}","received_events_url":"https://api.github.com/users/kmpablo/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2021-02-04T21:22:38Z","updated_at":"2021-02-26T02:26:04Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Thanks to @MDZHX in #213, we now have a list on each team member's page of the blog posts that they've written!\r\n\r\nHowever, we now need to update our check for the \"More Info\" lead in in `team.html` to also include whether or not the user has written a blog post. I think this is blocked by #242!","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/245/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/245/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/231","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/231/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/231/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/231/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/231","id":792643549,"node_id":"MDU6SXNzdWU3OTI2NDM1NDk=","number":231,"title":"Configure HTML Proofer to run basic checks","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"maggieelli","id":69731426,"node_id":"MDQ6VXNlcjY5NzMxNDI2","avatar_url":"https://avatars.githubusercontent.com/u/69731426?v=4","gravatar_id":"","url":"https://api.github.com/users/maggieelli","html_url":"https://github.com/maggieelli","followers_url":"https://api.github.com/users/maggieelli/followers","following_url":"https://api.github.com/users/maggieelli/following{/other_user}","gists_url":"https://api.github.com/users/maggieelli/gists{/gist_id}","starred_url":"https://api.github.com/users/maggieelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maggieelli/subscriptions","organizations_url":"https://api.github.com/users/maggieelli/orgs","repos_url":"https://api.github.com/users/maggieelli/repos","events_url":"https://api.github.com/users/maggieelli/events{/privacy}","received_events_url":"https://api.github.com/users/maggieelli/received_events","type":"User","site_admin":false},"assignees":[{"login":"maggieelli","id":69731426,"node_id":"MDQ6VXNlcjY5NzMxNDI2","avatar_url":"https://avatars.githubusercontent.com/u/69731426?v=4","gravatar_id":"","url":"https://api.github.com/users/maggieelli","html_url":"https://github.com/maggieelli","followers_url":"https://api.github.com/users/maggieelli/followers","following_url":"https://api.github.com/users/maggieelli/following{/other_user}","gists_url":"https://api.github.com/users/maggieelli/gists{/gist_id}","starred_url":"https://api.github.com/users/maggieelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maggieelli/subscriptions","organizations_url":"https://api.github.com/users/maggieelli/orgs","repos_url":"https://api.github.com/users/maggieelli/repos","events_url":"https://api.github.com/users/maggieelli/events{/privacy}","received_events_url":"https://api.github.com/users/maggieelli/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-01-23T20:29:32Z","updated_at":"2021-02-08T18:15:21Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"As our codebase becomes bigger and more and more contributors join our team, we should run some basic checks to make sure our (generated) HTML is valid; things like:\r\n\r\n* are all of our (non-self-closing) tags paired properly?\r\n* do all of our images have `alt` tags?\r\n* do we have typos or invalid props?\r\n* bonus: get opengraph checks to work 😊 \r\n\r\nWe've actually already built this in to our `rake` system with [HTMLProofer](https://github.com/gjtorikian/html-proofer) as `rake test`, with two caveats:\r\n\r\n* we don't run it in our CI action (though we should) - see `.github/workflows`\r\n* we haven't configured it at all - in particular, I'd like to disable the \"no invalid link\" check (`LinkCheck`), since it often is a false positive on Jekyll-generated sites. bonus points if we can get this to work properly too though!\r\n\r\nSo, let's do those two things by making a new `htmlproof` action! This is a great second/third ticket for devs to learn more about how our tooling works 😊 \r\n\r\n(p.s. there is an example on how to configure the `Rakefile` in the [HTMLProofer docs](https://github.com/gjtorikian/html-proofer/wiki/Using-HTMLProofer-From-Ruby-and-Travis); [here are the config options](https://github.com/gjtorikian/html-proofer#configuration))","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/231/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/231/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/127","repository_url":"https://api.github.com/repos/uclaacm/teach-la-website","labels_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/127/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/127/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/127/events","html_url":"https://github.com/uclaacm/teach-la-website/issues/127","id":727781992,"node_id":"MDU6SXNzdWU3Mjc3ODE5OTI=","number":127,"title":"Alt text passover","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":1408021965,"node_id":"MDU6TGFiZWwxNDA4MDIxOTY1","url":"https://api.github.com/repos/uclaacm/teach-la-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2020-10-22T23:23:28Z","updated_at":"2020-10-22T23:23:28Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"@Gautier404 mentioned that not all of our images (especially our vector art) have alt text - we should take a closer look at our existing images and how descriptive our alt texts are!","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/127/reactions","total_count":1,"+1":1,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-website/issues/127/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"teach-la-website","description":"🌱a website showcasing how awesome Teach LA is! ","link":"https://teachla.uclaacm.com","repo":"https://github.com/uclaacm/teach-la-website","lang":"HTML","topics":["education","jekyll","teach-la"],"image":"/committee-logos/teachla-logo.png","alt":"ACM Teach LA Logo"},"repoURL":"https://api.github.com/repos/uclaacm/teach-la-website"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/website/issues/492","repository_url":"https://api.github.com/repos/uclaacm/website","labels_url":"https://api.github.com/repos/uclaacm/website/issues/492/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/website/issues/492/comments","events_url":"https://api.github.com/repos/uclaacm/website/issues/492/events","html_url":"https://github.com/uclaacm/website/issues/492","id":1216216403,"node_id":"I_kwDOBjCw5s5Iff1T","number":492,"title":"Updates to About Page","user":{"login":"jainsujay02","id":78530348,"node_id":"MDQ6VXNlcjc4NTMwMzQ4","avatar_url":"https://avatars.githubusercontent.com/u/78530348?v=4","gravatar_id":"","url":"https://api.github.com/users/jainsujay02","html_url":"https://github.com/jainsujay02","followers_url":"https://api.github.com/users/jainsujay02/followers","following_url":"https://api.github.com/users/jainsujay02/following{/other_user}","gists_url":"https://api.github.com/users/jainsujay02/gists{/gist_id}","starred_url":"https://api.github.com/users/jainsujay02/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jainsujay02/subscriptions","organizations_url":"https://api.github.com/users/jainsujay02/orgs","repos_url":"https://api.github.com/users/jainsujay02/repos","events_url":"https://api.github.com/users/jainsujay02/events{/privacy}","received_events_url":"https://api.github.com/users/jainsujay02/received_events","type":"User","site_admin":false},"labels":[{"id":695018202,"node_id":"MDU6TGFiZWw2OTUwMTgyMDI=","url":"https://api.github.com/repos/uclaacm/website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"byte-sized change that should be easy to make; typically has a fleshed out ticket!"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2022-04-26T16:41:22Z","updated_at":"2022-04-26T16:41:38Z","closed_at":null,"author_association":"NONE","active_lock_reason":null,"body":"Changes requested to `https://acm.cs.ucla.edu/about`\r\n\r\nAs an Ops Intern, I often interacted with general members who had no clue what the board did. In the interest of transparency and recognizing the amazing work of the people on board, I'd like to make the following changes. \r\n\r\n- [ ] Increase font size for the body text \r\n- [ ] Add a `What's ACM board?` This section should provide an overview of internal and external in 2-3 brief sentences and some pictures of board meetings to go with it. \r\n- [ ] Add a `What are ACM Initiatives?` after what's board. A sentence explaining that these are independent teams within the board who work on super cool ideas/projects followed by links to all of our initiatives - Dev Team, JEDI, Impact, and Rustaceans! We should also have a collage of their logos next to links/descriptions! \r\n- [ ] Add a quick explanation for `Leadership.`\r\n- [ ] Add a line on our event calends and link to it for `How do I get involved? `\r\n- [ ] Once the friends of ACM page is ready, we should add `What clubs on campus does ACM collaborate with?` at the end and link it here! Possibly have a line saying that clubs should reach out to the EVP via acm@ucla.edu for questions on collab.\r\n- [ ] Once the history page is ready, we should add a `How did ACM came to be?` or something along these lines and link to the history page with a sentence or two for context. \r\n- [ ] Once the officer's page is ready, we should add a` Who's who` section after the leadership and link it to the page! ","reactions":{"url":"https://api.github.com/repos/uclaacm/website/issues/492/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/website/issues/492/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/website/issues/225","repository_url":"https://api.github.com/repos/uclaacm/website","labels_url":"https://api.github.com/repos/uclaacm/website/issues/225/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/website/issues/225/comments","events_url":"https://api.github.com/repos/uclaacm/website/issues/225/events","html_url":"https://github.com/uclaacm/website/issues/225","id":958339143,"node_id":"MDU6SXNzdWU5NTgzMzkxNDM=","number":225,"title":"Clean up accessibility tree","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":695018201,"node_id":"MDU6TGFiZWw2OTUwMTgyMDE=","url":"https://api.github.com/repos/uclaacm/website/labels/help%20wanted","name":"help wanted","color":"33aa3f","default":true,"description":null},{"id":695018202,"node_id":"MDU6TGFiZWw2OTUwMTgyMDI=","url":"https://api.github.com/repos/uclaacm/website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"byte-sized change that should be easy to make; typically has a fleshed out ticket!"},{"id":3199883558,"node_id":"MDU6TGFiZWwzMTk5ODgzNTU4","url":"https://api.github.com/repos/uclaacm/website/labels/long%20term","name":"long term","color":"AB5F85","default":false,"description":"a problem that we'd have to work on over a long chunk of time"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2021-08-02T17:07:32Z","updated_at":"2022-06-29T20:14:55Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Like many of my ideas for this website, this one comes from poking around Hack's (see uclaacm/hack.uclaacm.com#229) - our accessibility tree is rather disgusting.\r\n\r\n\"Screen\r\n\r\nIn particular - the nav is poorly marked, many alt tags are not helpful, and the page is lacking a parseable structure.\r\n\r\nLet's make this an \"Epic\" of sorts - we want to run manual audits and resolve them on:\r\n\r\n- [ ] home page\r\n- [ ] about page\r\n- [ ] committees page (this one will be *hard*)\r\n- [ ] events page\r\n- [ ] sponsors page \r\n\r\nFurthermore, for our new pages, let's build them in gracefully:\r\n\r\n- [ ] internship page, #222 \r\n- [ ] events page / events archive page #179 \r\n- [ ] impact page \r\n- [ ] jedi page\r\n- [ ] dev team page\r\n- [ ] \"friends\" page \r\n\r\nDebating if this is a walkthrough I'll do with the dev team!","reactions":{"url":"https://api.github.com/repos/uclaacm/website/issues/225/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/website/issues/225/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/website/issues/189","repository_url":"https://api.github.com/repos/uclaacm/website","labels_url":"https://api.github.com/repos/uclaacm/website/issues/189/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/website/issues/189/comments","events_url":"https://api.github.com/repos/uclaacm/website/issues/189/events","html_url":"https://github.com/uclaacm/website/issues/189","id":932620504,"node_id":"MDU6SXNzdWU5MzI2MjA1MDQ=","number":189,"title":"consider collating image imports","user":{"login":"advaithg","id":67539191,"node_id":"MDQ6VXNlcjY3NTM5MTkx","avatar_url":"https://avatars.githubusercontent.com/u/67539191?v=4","gravatar_id":"","url":"https://api.github.com/users/advaithg","html_url":"https://github.com/advaithg","followers_url":"https://api.github.com/users/advaithg/followers","following_url":"https://api.github.com/users/advaithg/following{/other_user}","gists_url":"https://api.github.com/users/advaithg/gists{/gist_id}","starred_url":"https://api.github.com/users/advaithg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/advaithg/subscriptions","organizations_url":"https://api.github.com/users/advaithg/orgs","repos_url":"https://api.github.com/users/advaithg/repos","events_url":"https://api.github.com/users/advaithg/events{/privacy}","received_events_url":"https://api.github.com/users/advaithg/received_events","type":"User","site_admin":false},"labels":[{"id":695018202,"node_id":"MDU6TGFiZWw2OTUwMTgyMDI=","url":"https://api.github.com/repos/uclaacm/website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"byte-sized change that should be easy to make; typically has a fleshed out ticket!"},{"id":3322443259,"node_id":"MDU6TGFiZWwzMzIyNDQzMjU5","url":"https://api.github.com/repos/uclaacm/website/labels/low-priority","name":"low-priority","color":"C2E0C6","default":false,"description":"not a huge deal if we don't get done, but great extra work to pick up"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-06-29T12:48:41Z","updated_at":"2021-09-04T07:58:56Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"A pretty straightforward issue.\r\nConsider putting images into a js file so it's easier to import them instead of detailing the whole path every time we want to import an image.\r\n\r\nSee [this](https://github.com/uclaacm/website/pull/178#discussion_r659099893) comment on the next.js transition PR for an example.","reactions":{"url":"https://api.github.com/repos/uclaacm/website/issues/189/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/website/issues/189/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"website","description":"The official website for ACM at UCLA, the largest tech community on campus!","link":"https://acm.cs.ucla.edu","repo":"https://github.com/uclaacm/website","lang":"JavaScript","topics":["nextjs","react"],"image":"/logo.png","alt":"ACM @ UCLA's Logo"},"repoURL":"https://api.github.com/repos/uclaacm/website"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/status-check/issues/9","repository_url":"https://api.github.com/repos/uclaacm/status-check","labels_url":"https://api.github.com/repos/uclaacm/status-check/issues/9/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/status-check/issues/9/comments","events_url":"https://api.github.com/repos/uclaacm/status-check/issues/9/events","html_url":"https://github.com/uclaacm/status-check/issues/9","id":1115641879,"node_id":"I_kwDOGQh08s5Cf1gX","number":9,"title":"Set up CI","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":3476186026,"node_id":"LA_kwDOGQh08s7PMmOq","url":"https://api.github.com/repos/uclaacm/status-check/labels/enhancement","name":"enhancement","color":"a2eeef","default":true,"description":"New feature or request"},{"id":3476186030,"node_id":"LA_kwDOGQh08s7PMmOu","url":"https://api.github.com/repos/uclaacm/status-check/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2022-01-27T00:39:31Z","updated_at":"2022-03-02T21:22:53Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"It would be great to have some helpful CI for reviewing PRs! This could include:\r\n\r\n* checking `yarn build`\r\n* if relevant, running `yarn test`\r\n* linting (FE & BE) - ESLint, Stylelint, etc.\r\n\r\nIf you're able to split up the FE & BE cleanly, you can also blend in the Netlify CD deploy for the frontend.\r\n\r\nWe should use GitHub Actions - you can browse around other ACM repos that use JavaScript to see how they're implemented. The trickiest thing might be resolving the monorepo nature of this project.","reactions":{"url":"https://api.github.com/repos/uclaacm/status-check/issues/9/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/status-check/issues/9/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"status-check","description":"Check the health/status of ACM's various websites/deployments!","link":"https://acm-status-check.netlify.app","repo":"https://github.com/uclaacm/status-check","lang":"JavaScript","topics":[],"image":"/logo.png","alt":"ACM @ UCLA's Logo"},"repoURL":"https://api.github.com/repos/uclaacm/status-check"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/dev-pathways/issues/98","repository_url":"https://api.github.com/repos/uclaacm/dev-pathways","labels_url":"https://api.github.com/repos/uclaacm/dev-pathways/issues/98/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/dev-pathways/issues/98/comments","events_url":"https://api.github.com/repos/uclaacm/dev-pathways/issues/98/events","html_url":"https://github.com/uclaacm/dev-pathways/issues/98","id":1105191838,"node_id":"I_kwDOE8dP8s5B3-Oe","number":98,"title":"Prevent moving from the quiz page to pathways page if not all prompts have been filled","user":{"login":"doubleiis02","id":50722281,"node_id":"MDQ6VXNlcjUwNzIyMjgx","avatar_url":"https://avatars.githubusercontent.com/u/50722281?v=4","gravatar_id":"","url":"https://api.github.com/users/doubleiis02","html_url":"https://github.com/doubleiis02","followers_url":"https://api.github.com/users/doubleiis02/followers","following_url":"https://api.github.com/users/doubleiis02/following{/other_user}","gists_url":"https://api.github.com/users/doubleiis02/gists{/gist_id}","starred_url":"https://api.github.com/users/doubleiis02/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/doubleiis02/subscriptions","organizations_url":"https://api.github.com/users/doubleiis02/orgs","repos_url":"https://api.github.com/users/doubleiis02/repos","events_url":"https://api.github.com/users/doubleiis02/events{/privacy}","received_events_url":"https://api.github.com/users/doubleiis02/received_events","type":"User","site_admin":false},"labels":[{"id":2677692716,"node_id":"MDU6TGFiZWwyNjc3NjkyNzE2","url":"https://api.github.com/repos/uclaacm/dev-pathways/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":3735630534,"node_id":"LA_kwDOE8dP8s7eqTLG","url":"https://api.github.com/repos/uclaacm/dev-pathways/labels/easy","name":"easy","color":"c7c7c7","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"SruthiR03","id":67874140,"node_id":"MDQ6VXNlcjY3ODc0MTQw","avatar_url":"https://avatars.githubusercontent.com/u/67874140?v=4","gravatar_id":"","url":"https://api.github.com/users/SruthiR03","html_url":"https://github.com/SruthiR03","followers_url":"https://api.github.com/users/SruthiR03/followers","following_url":"https://api.github.com/users/SruthiR03/following{/other_user}","gists_url":"https://api.github.com/users/SruthiR03/gists{/gist_id}","starred_url":"https://api.github.com/users/SruthiR03/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SruthiR03/subscriptions","organizations_url":"https://api.github.com/users/SruthiR03/orgs","repos_url":"https://api.github.com/users/SruthiR03/repos","events_url":"https://api.github.com/users/SruthiR03/events{/privacy}","received_events_url":"https://api.github.com/users/SruthiR03/received_events","type":"User","site_admin":false},"assignees":[{"login":"SruthiR03","id":67874140,"node_id":"MDQ6VXNlcjY3ODc0MTQw","avatar_url":"https://avatars.githubusercontent.com/u/67874140?v=4","gravatar_id":"","url":"https://api.github.com/users/SruthiR03","html_url":"https://github.com/SruthiR03","followers_url":"https://api.github.com/users/SruthiR03/followers","following_url":"https://api.github.com/users/SruthiR03/following{/other_user}","gists_url":"https://api.github.com/users/SruthiR03/gists{/gist_id}","starred_url":"https://api.github.com/users/SruthiR03/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SruthiR03/subscriptions","organizations_url":"https://api.github.com/users/SruthiR03/orgs","repos_url":"https://api.github.com/users/SruthiR03/repos","events_url":"https://api.github.com/users/SruthiR03/events{/privacy}","received_events_url":"https://api.github.com/users/SruthiR03/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2022-01-16T21:25:53Z","updated_at":"2022-01-26T06:04:56Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"All selections in the `Quiz.js` page should be filled out in order for the `Generate` button to work and allow the user to move to the generated `Pathway.js` page. If that is not the case, then alert the user that all questions must be answered.","reactions":{"url":"https://api.github.com/repos/uclaacm/dev-pathways/issues/98/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/dev-pathways/issues/98/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"dev-pathways","description":"Providing learning pathways to new devs at ACM since 2021. πŸ“•πŸ“—πŸ“˜","link":"https://dev-pathways.netlify.app/","repo":"https://github.com/uclaacm/dev-pathways","lang":"JavaScript","topics":["teach-la"],"image":"/committee-logos/teachla-logo.png","alt":"ACM Teach LA Logo"},"repoURL":"https://api.github.com/repos/uclaacm/dev-pathways"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/741","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/741/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/741/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/741/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/741","id":1055830774,"node_id":"I_kwDOCePRrs4-7rL2","number":741,"title":"bug: add space between \"Login\" versus \"or, create an account\" on login page","user":{"login":"mattxwang","id":14893287,"node_id":"MDQ6VXNlcjE0ODkzMjg3","avatar_url":"https://avatars.githubusercontent.com/u/14893287?v=4","gravatar_id":"","url":"https://api.github.com/users/mattxwang","html_url":"https://github.com/mattxwang","followers_url":"https://api.github.com/users/mattxwang/followers","following_url":"https://api.github.com/users/mattxwang/following{/other_user}","gists_url":"https://api.github.com/users/mattxwang/gists{/gist_id}","starred_url":"https://api.github.com/users/mattxwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattxwang/subscriptions","organizations_url":"https://api.github.com/users/mattxwang/orgs","repos_url":"https://api.github.com/users/mattxwang/repos","events_url":"https://api.github.com/users/mattxwang/events{/privacy}","received_events_url":"https://api.github.com/users/mattxwang/received_events","type":"User","site_admin":false},"labels":[{"id":1194843222,"node_id":"MDU6TGFiZWwxMTk0ODQzMjIy","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/bug","name":"bug","color":"d73a4a","default":true,"description":"Something isn't working"},{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"nguyenhung15913","id":69558780,"node_id":"MDQ6VXNlcjY5NTU4Nzgw","avatar_url":"https://avatars.githubusercontent.com/u/69558780?v=4","gravatar_id":"","url":"https://api.github.com/users/nguyenhung15913","html_url":"https://github.com/nguyenhung15913","followers_url":"https://api.github.com/users/nguyenhung15913/followers","following_url":"https://api.github.com/users/nguyenhung15913/following{/other_user}","gists_url":"https://api.github.com/users/nguyenhung15913/gists{/gist_id}","starred_url":"https://api.github.com/users/nguyenhung15913/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nguyenhung15913/subscriptions","organizations_url":"https://api.github.com/users/nguyenhung15913/orgs","repos_url":"https://api.github.com/users/nguyenhung15913/repos","events_url":"https://api.github.com/users/nguyenhung15913/events{/privacy}","received_events_url":"https://api.github.com/users/nguyenhung15913/received_events","type":"User","site_admin":false},"assignees":[{"login":"nguyenhung15913","id":69558780,"node_id":"MDQ6VXNlcjY5NTU4Nzgw","avatar_url":"https://avatars.githubusercontent.com/u/69558780?v=4","gravatar_id":"","url":"https://api.github.com/users/nguyenhung15913","html_url":"https://github.com/nguyenhung15913","followers_url":"https://api.github.com/users/nguyenhung15913/followers","following_url":"https://api.github.com/users/nguyenhung15913/following{/other_user}","gists_url":"https://api.github.com/users/nguyenhung15913/gists{/gist_id}","starred_url":"https://api.github.com/users/nguyenhung15913/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nguyenhung15913/subscriptions","organizations_url":"https://api.github.com/users/nguyenhung15913/orgs","repos_url":"https://api.github.com/users/nguyenhung15913/repos","events_url":"https://api.github.com/users/nguyenhung15913/events{/privacy}","received_events_url":"https://api.github.com/users/nguyenhung15913/received_events","type":"User","site_admin":false}],"milestone":null,"comments":2,"created_at":"2021-11-17T08:09:43Z","updated_at":"2021-11-24T02:51:43Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Not sure when this regressed, but there's currently no space (between Login or the create account CTA) on the login page, which looks a bit awkward:\r\n\r\n![Screen Shot 2021-11-17 at 12 08 38 AM](https://user-images.githubusercontent.com/14893287/142160608-2ec2b33e-369c-4ec8-aa2c-f6c1acab174b.png)\r\n\r\n\r\nShould be a one-liner?","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/741/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/741/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/726","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/726/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/726/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/726/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/726","id":1052539482,"node_id":"I_kwDOCePRrs4-vHpa","number":726,"title":"Refactor ViewOnly.js into a functional component w/ hooks","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1194843223,"node_id":"MDU6TGFiZWwxMTk0ODQzMjIz","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/refactor","name":"refactor","color":"cfd3d7","default":false,"description":"Refactoring & cleanup"},{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"},{"id":3523090144,"node_id":"LA_kwDOCePRrs7R_hbg","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/taken","name":"taken","color":"9619EF","default":false,"description":"this ticket is taken"}],"state":"open","locked":false,"assignee":{"login":"BilalG1","id":1523448,"node_id":"MDQ6VXNlcjE1MjM0NDg=","avatar_url":"https://avatars.githubusercontent.com/u/1523448?v=4","gravatar_id":"","url":"https://api.github.com/users/BilalG1","html_url":"https://github.com/BilalG1","followers_url":"https://api.github.com/users/BilalG1/followers","following_url":"https://api.github.com/users/BilalG1/following{/other_user}","gists_url":"https://api.github.com/users/BilalG1/gists{/gist_id}","starred_url":"https://api.github.com/users/BilalG1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BilalG1/subscriptions","organizations_url":"https://api.github.com/users/BilalG1/orgs","repos_url":"https://api.github.com/users/BilalG1/repos","events_url":"https://api.github.com/users/BilalG1/events{/privacy}","received_events_url":"https://api.github.com/users/BilalG1/received_events","type":"User","site_admin":false},"assignees":[{"login":"BilalG1","id":1523448,"node_id":"MDQ6VXNlcjE1MjM0NDg=","avatar_url":"https://avatars.githubusercontent.com/u/1523448?v=4","gravatar_id":"","url":"https://api.github.com/users/BilalG1","html_url":"https://github.com/BilalG1","followers_url":"https://api.github.com/users/BilalG1/followers","following_url":"https://api.github.com/users/BilalG1/following{/other_user}","gists_url":"https://api.github.com/users/BilalG1/gists{/gist_id}","starred_url":"https://api.github.com/users/BilalG1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BilalG1/subscriptions","organizations_url":"https://api.github.com/users/BilalG1/orgs","repos_url":"https://api.github.com/users/BilalG1/repos","events_url":"https://api.github.com/users/BilalG1/events{/privacy}","received_events_url":"https://api.github.com/users/BilalG1/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-11-13T04:21:37Z","updated_at":"2021-11-28T04:53:23Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"https://github.com/uclaacm/TeachLAFrontend/blob/master/src/components/ViewOnly.js","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/726/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/726/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/724","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/724/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/724/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/724/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/724","id":1052538879,"node_id":"I_kwDOCePRrs4-vHf_","number":724,"title":"Refactor LoginForm.js to a functional component w/ hooks","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1194843223,"node_id":"MDU6TGFiZWwxMTk0ODQzMjIz","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/refactor","name":"refactor","color":"cfd3d7","default":false,"description":"Refactoring & cleanup"},{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"},{"id":3548395051,"node_id":"LA_kwDOCePRrs7TgDYr","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/reserved","name":"reserved","color":"47BC30","default":false,"description":""}],"state":"open","locked":false,"assignee":{"login":"ArushRam","id":60648382,"node_id":"MDQ6VXNlcjYwNjQ4Mzgy","avatar_url":"https://avatars.githubusercontent.com/u/60648382?v=4","gravatar_id":"","url":"https://api.github.com/users/ArushRam","html_url":"https://github.com/ArushRam","followers_url":"https://api.github.com/users/ArushRam/followers","following_url":"https://api.github.com/users/ArushRam/following{/other_user}","gists_url":"https://api.github.com/users/ArushRam/gists{/gist_id}","starred_url":"https://api.github.com/users/ArushRam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ArushRam/subscriptions","organizations_url":"https://api.github.com/users/ArushRam/orgs","repos_url":"https://api.github.com/users/ArushRam/repos","events_url":"https://api.github.com/users/ArushRam/events{/privacy}","received_events_url":"https://api.github.com/users/ArushRam/received_events","type":"User","site_admin":false},"assignees":[{"login":"ArushRam","id":60648382,"node_id":"MDQ6VXNlcjYwNjQ4Mzgy","avatar_url":"https://avatars.githubusercontent.com/u/60648382?v=4","gravatar_id":"","url":"https://api.github.com/users/ArushRam","html_url":"https://github.com/ArushRam","followers_url":"https://api.github.com/users/ArushRam/followers","following_url":"https://api.github.com/users/ArushRam/following{/other_user}","gists_url":"https://api.github.com/users/ArushRam/gists{/gist_id}","starred_url":"https://api.github.com/users/ArushRam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ArushRam/subscriptions","organizations_url":"https://api.github.com/users/ArushRam/orgs","repos_url":"https://api.github.com/users/ArushRam/repos","events_url":"https://api.github.com/users/ArushRam/events{/privacy}","received_events_url":"https://api.github.com/users/ArushRam/received_events","type":"User","site_admin":false}],"milestone":null,"comments":5,"created_at":"2021-11-13T04:17:25Z","updated_at":"2021-11-14T15:40:21Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"https://github.com/uclaacm/TeachLAFrontend/blob/master/src/components/Login/LoginForm.js","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/724/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/724/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/670","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/670/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/670/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/670/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/670","id":1036774679,"node_id":"I_kwDOCePRrs49y-0X","number":670,"title":"Refactor Output.js into a functional component w/ hooks","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1194843223,"node_id":"MDU6TGFiZWwxMTk0ODQzMjIz","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/refactor","name":"refactor","color":"cfd3d7","default":false,"description":"Refactoring & cleanup"},{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"},{"id":3523090144,"node_id":"LA_kwDOCePRrs7R_hbg","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/taken","name":"taken","color":"9619EF","default":false,"description":"this ticket is taken"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-10-26T21:55:15Z","updated_at":"2021-11-06T06:01:06Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"https://github.com/uclaacm/TeachLAFrontend/blob/master/src/components/Output/Output.js","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/670/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/670/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/489","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/489/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/489/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/489/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/489","id":867199776,"node_id":"MDU6SXNzdWU4NjcxOTk3NzY=","number":489,"title":"Refactor common/Radio.js to a functional component w/ hooks","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1194843223,"node_id":"MDU6TGFiZWwxMTk0ODQzMjIz","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/refactor","name":"refactor","color":"cfd3d7","default":false,"description":"Refactoring & cleanup"},{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"},{"id":3523090144,"node_id":"LA_kwDOCePRrs7R_hbg","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/taken","name":"taken","color":"9619EF","default":false,"description":"this ticket is taken"}],"state":"open","locked":false,"assignee":{"login":"edmondywen","id":71907436,"node_id":"MDQ6VXNlcjcxOTA3NDM2","avatar_url":"https://avatars.githubusercontent.com/u/71907436?v=4","gravatar_id":"","url":"https://api.github.com/users/edmondywen","html_url":"https://github.com/edmondywen","followers_url":"https://api.github.com/users/edmondywen/followers","following_url":"https://api.github.com/users/edmondywen/following{/other_user}","gists_url":"https://api.github.com/users/edmondywen/gists{/gist_id}","starred_url":"https://api.github.com/users/edmondywen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edmondywen/subscriptions","organizations_url":"https://api.github.com/users/edmondywen/orgs","repos_url":"https://api.github.com/users/edmondywen/repos","events_url":"https://api.github.com/users/edmondywen/events{/privacy}","received_events_url":"https://api.github.com/users/edmondywen/received_events","type":"User","site_admin":false},"assignees":[{"login":"edmondywen","id":71907436,"node_id":"MDQ6VXNlcjcxOTA3NDM2","avatar_url":"https://avatars.githubusercontent.com/u/71907436?v=4","gravatar_id":"","url":"https://api.github.com/users/edmondywen","html_url":"https://github.com/edmondywen","followers_url":"https://api.github.com/users/edmondywen/followers","following_url":"https://api.github.com/users/edmondywen/following{/other_user}","gists_url":"https://api.github.com/users/edmondywen/gists{/gist_id}","starred_url":"https://api.github.com/users/edmondywen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/edmondywen/subscriptions","organizations_url":"https://api.github.com/users/edmondywen/orgs","repos_url":"https://api.github.com/users/edmondywen/repos","events_url":"https://api.github.com/users/edmondywen/events{/privacy}","received_events_url":"https://api.github.com/users/edmondywen/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-04-26T02:32:13Z","updated_at":"2021-11-09T18:55:07Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"https://github.com/uclaacm/TeachLAFrontend/blob/master/src/components/common/Radio.js\r\nThis would require test changes as well.","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/489/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/489/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/440","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/440/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/440/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/440/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/440","id":806899591,"node_id":"MDU6SXNzdWU4MDY4OTk1OTE=","number":440,"title":"Flip console and display outputs, enlarge output in JavaScript/visual programs","user":{"login":"krashanoff","id":7704542,"node_id":"MDQ6VXNlcjc3MDQ1NDI=","avatar_url":"https://avatars.githubusercontent.com/u/7704542?v=4","gravatar_id":"","url":"https://api.github.com/users/krashanoff","html_url":"https://github.com/krashanoff","followers_url":"https://api.github.com/users/krashanoff/followers","following_url":"https://api.github.com/users/krashanoff/following{/other_user}","gists_url":"https://api.github.com/users/krashanoff/gists{/gist_id}","starred_url":"https://api.github.com/users/krashanoff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krashanoff/subscriptions","organizations_url":"https://api.github.com/users/krashanoff/orgs","repos_url":"https://api.github.com/users/krashanoff/repos","events_url":"https://api.github.com/users/krashanoff/events{/privacy}","received_events_url":"https://api.github.com/users/krashanoff/received_events","type":"User","site_admin":false},"labels":[{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"},{"id":2430344767,"node_id":"MDU6TGFiZWwyNDMwMzQ0NzY3","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/enhancement","name":"enhancement","color":"6b98e5","default":true,"description":"Improving an existing feature"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-02-12T02:36:37Z","updated_at":"2022-05-04T23:42:57Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Right now, the console output for our programs appears above the visual output:\r\n\r\n![image](https://user-images.githubusercontent.com/7704542/107724127-f9b23780-6c97-11eb-8a69-653300d85452.png)\r\n\r\nAccording to the teaching team, this is a little difficult for kids to work with when working on Turtle programs. To fix this, we can switch the console with the display, and give a little bit more room for the drawing output. While we're at it, we should enlarge the console output a bit.","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/440/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/440/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/429","repository_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend","labels_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/429/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/429/comments","events_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/429/events","html_url":"https://github.com/uclaacm/TeachLAFrontend/issues/429","id":796574968,"node_id":"MDU6SXNzdWU3OTY1NzQ5Njg=","number":429,"title":"Refactor modal-like components to single component-variants.","user":{"login":"krashanoff","id":7704542,"node_id":"MDQ6VXNlcjc3MDQ1NDI=","avatar_url":"https://avatars.githubusercontent.com/u/7704542?v=4","gravatar_id":"","url":"https://api.github.com/users/krashanoff","html_url":"https://github.com/krashanoff","followers_url":"https://api.github.com/users/krashanoff/followers","following_url":"https://api.github.com/users/krashanoff/following{/other_user}","gists_url":"https://api.github.com/users/krashanoff/gists{/gist_id}","starred_url":"https://api.github.com/users/krashanoff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krashanoff/subscriptions","organizations_url":"https://api.github.com/users/krashanoff/orgs","repos_url":"https://api.github.com/users/krashanoff/repos","events_url":"https://api.github.com/users/krashanoff/events{/privacy}","received_events_url":"https://api.github.com/users/krashanoff/received_events","type":"User","site_admin":false},"labels":[{"id":1194843223,"node_id":"MDU6TGFiZWwxMTk0ODQzMjIz","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/refactor","name":"refactor","color":"cfd3d7","default":false,"description":"Refactoring & cleanup"},{"id":1194843226,"node_id":"MDU6TGFiZWwxMTk0ODQzMjI2","url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/labels/good%20first%20issue","name":"good first issue","color":"EF82C8","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-01-29T04:47:39Z","updated_at":"2021-10-11T00:22:35Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Right now, we have a small army of components to fulfill our `Modal` purposes. We can consolidate their functionality into a single component that changes its render routine based on the props passed to it. Refactors like this will make our code more readable and more maintainable.","reactions":{"url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/429/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/TeachLAFrontend/issues/429/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"TeachLAFrontend","description":"🌱the frontend for Teach LA's online IDE, designed to teach kids how to code!","link":"https://editor.uclaacm.com","repo":"https://github.com/uclaacm/TeachLAFrontend","lang":"JavaScript","topics":["education","firebase","ide","react","redux","teach-la"],"image":"/committee-logos/teachla-logo.png","alt":"ACM Teach LA Logo"},"repoURL":"https://api.github.com/repos/uclaacm/TeachLAFrontend"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/issues/269","repository_url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com","labels_url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/issues/269/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/issues/269/comments","events_url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/issues/269/events","html_url":"https://github.com/uclaacm/hack.uclaacm.com/issues/269","id":1039211359,"node_id":"I_kwDOCenC08498Rtf","number":269,"title":"Organize data","user":{"login":"jodymlin","id":44387428,"node_id":"MDQ6VXNlcjQ0Mzg3NDI4","avatar_url":"https://avatars.githubusercontent.com/u/44387428?v=4","gravatar_id":"","url":"https://api.github.com/users/jodymlin","html_url":"https://github.com/jodymlin","followers_url":"https://api.github.com/users/jodymlin/followers","following_url":"https://api.github.com/users/jodymlin/following{/other_user}","gists_url":"https://api.github.com/users/jodymlin/gists{/gist_id}","starred_url":"https://api.github.com/users/jodymlin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jodymlin/subscriptions","organizations_url":"https://api.github.com/users/jodymlin/orgs","repos_url":"https://api.github.com/users/jodymlin/repos","events_url":"https://api.github.com/users/jodymlin/events{/privacy}","received_events_url":"https://api.github.com/users/jodymlin/received_events","type":"User","site_admin":false},"labels":[{"id":1197978634,"node_id":"MDU6TGFiZWwxMTk3OTc4NjM0","url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-10-29T06:23:42Z","updated_at":"2021-12-16T23:06:16Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"Our project currently uses a mix of storing data within component files and the `src/data/` directory. To make this cleaner, we should pull add data in the `src/data` folder. \r\n\r\nSmall nit: There is also a sub folder in `src/data` called `events/` that is also not super important so we can get rid of it and move up all the files.","reactions":{"url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/issues/269/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/hack.uclaacm.com/issues/269/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"hack.uclaacm.com","description":"Official website of ACM Hack.","link":"https://hack.uclaacm.com","repo":"https://github.com/uclaacm/hack.uclaacm.com","lang":"JavaScript","topics":["acm-hack"],"image":"/committee-logos/hack-logo.png","alt":"ACM Hack Logo"},"repoURL":"https://api.github.com/repos/uclaacm/hack.uclaacm.com"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/69","repository_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend","labels_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/69/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/69/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/69/events","html_url":"https://github.com/uclaacm/teach-la-go-backend/issues/69","id":1028519611,"node_id":"I_kwDODQTu2849Tfa7","number":69,"title":"Add a description field to classes","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1646363860,"node_id":"MDU6TGFiZWwxNjQ2MzYzODYw","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/enhancement","name":"enhancement","color":"a2eeef","default":true,"description":"New feature or request"},{"id":1646363861,"node_id":"MDU6TGFiZWwxNjQ2MzYzODYx","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"anvig25","id":86326593,"node_id":"MDQ6VXNlcjg2MzI2NTkz","avatar_url":"https://avatars.githubusercontent.com/u/86326593?v=4","gravatar_id":"","url":"https://api.github.com/users/anvig25","html_url":"https://github.com/anvig25","followers_url":"https://api.github.com/users/anvig25/followers","following_url":"https://api.github.com/users/anvig25/following{/other_user}","gists_url":"https://api.github.com/users/anvig25/gists{/gist_id}","starred_url":"https://api.github.com/users/anvig25/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anvig25/subscriptions","organizations_url":"https://api.github.com/users/anvig25/orgs","repos_url":"https://api.github.com/users/anvig25/repos","events_url":"https://api.github.com/users/anvig25/events{/privacy}","received_events_url":"https://api.github.com/users/anvig25/received_events","type":"User","site_admin":false},"assignees":[{"login":"anvig25","id":86326593,"node_id":"MDQ6VXNlcjg2MzI2NTkz","avatar_url":"https://avatars.githubusercontent.com/u/86326593?v=4","gravatar_id":"","url":"https://api.github.com/users/anvig25","html_url":"https://github.com/anvig25","followers_url":"https://api.github.com/users/anvig25/followers","following_url":"https://api.github.com/users/anvig25/following{/other_user}","gists_url":"https://api.github.com/users/anvig25/gists{/gist_id}","starred_url":"https://api.github.com/users/anvig25/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anvig25/subscriptions","organizations_url":"https://api.github.com/users/anvig25/orgs","repos_url":"https://api.github.com/users/anvig25/repos","events_url":"https://api.github.com/users/anvig25/events{/privacy}","received_events_url":"https://api.github.com/users/anvig25/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-10-18T01:35:42Z","updated_at":"2022-05-11T01:13:59Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"This should just be a simple string field in https://github.com/uclaacm/teach-la-go-backend/blob/master/db/class.go","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/69/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/69/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/68","repository_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend","labels_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/68/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/68/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/68/events","html_url":"https://github.com/uclaacm/teach-la-go-backend/issues/68","id":1025535836,"node_id":"I_kwDODQTu2849IG9c","number":68,"title":"Refactor db#Db.UpdateProgram into a handler function","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1646363861,"node_id":"MDU6TGFiZWwxNjQ2MzYzODYx","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":3053709627,"node_id":"MDU6TGFiZWwzMDUzNzA5NjI3","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/refactor","name":"refactor","color":"e99695","default":false,"description":"Reorganizes existing code without modifying functionality"}],"state":"open","locked":false,"assignee":{"login":"andrewpan07","id":60210117,"node_id":"MDQ6VXNlcjYwMjEwMTE3","avatar_url":"https://avatars.githubusercontent.com/u/60210117?v=4","gravatar_id":"","url":"https://api.github.com/users/andrewpan07","html_url":"https://github.com/andrewpan07","followers_url":"https://api.github.com/users/andrewpan07/followers","following_url":"https://api.github.com/users/andrewpan07/following{/other_user}","gists_url":"https://api.github.com/users/andrewpan07/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewpan07/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewpan07/subscriptions","organizations_url":"https://api.github.com/users/andrewpan07/orgs","repos_url":"https://api.github.com/users/andrewpan07/repos","events_url":"https://api.github.com/users/andrewpan07/events{/privacy}","received_events_url":"https://api.github.com/users/andrewpan07/received_events","type":"User","site_admin":false},"assignees":[{"login":"andrewpan07","id":60210117,"node_id":"MDQ6VXNlcjYwMjEwMTE3","avatar_url":"https://avatars.githubusercontent.com/u/60210117?v=4","gravatar_id":"","url":"https://api.github.com/users/andrewpan07","html_url":"https://github.com/andrewpan07","followers_url":"https://api.github.com/users/andrewpan07/followers","following_url":"https://api.github.com/users/andrewpan07/following{/other_user}","gists_url":"https://api.github.com/users/andrewpan07/gists{/gist_id}","starred_url":"https://api.github.com/users/andrewpan07/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andrewpan07/subscriptions","organizations_url":"https://api.github.com/users/andrewpan07/orgs","repos_url":"https://api.github.com/users/andrewpan07/repos","events_url":"https://api.github.com/users/andrewpan07/events{/privacy}","received_events_url":"https://api.github.com/users/andrewpan07/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2021-10-13T17:51:59Z","updated_at":"2022-02-16T02:52:12Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"See #57 for an example","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/68/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/68/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/63","repository_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend","labels_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/63/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/63/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/63/events","html_url":"https://github.com/uclaacm/teach-la-go-backend/issues/63","id":1018940273,"node_id":"I_kwDODQTu2848u8tx","number":63,"title":"Refactor db#DB.UpdateUser into a handler function","user":{"login":"lumisphere902","id":8311368,"node_id":"MDQ6VXNlcjgzMTEzNjg=","avatar_url":"https://avatars.githubusercontent.com/u/8311368?v=4","gravatar_id":"","url":"https://api.github.com/users/lumisphere902","html_url":"https://github.com/lumisphere902","followers_url":"https://api.github.com/users/lumisphere902/followers","following_url":"https://api.github.com/users/lumisphere902/following{/other_user}","gists_url":"https://api.github.com/users/lumisphere902/gists{/gist_id}","starred_url":"https://api.github.com/users/lumisphere902/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lumisphere902/subscriptions","organizations_url":"https://api.github.com/users/lumisphere902/orgs","repos_url":"https://api.github.com/users/lumisphere902/repos","events_url":"https://api.github.com/users/lumisphere902/events{/privacy}","received_events_url":"https://api.github.com/users/lumisphere902/received_events","type":"User","site_admin":false},"labels":[{"id":1646363861,"node_id":"MDU6TGFiZWwxNjQ2MzYzODYx","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"},{"id":3053709627,"node_id":"MDU6TGFiZWwzMDUzNzA5NjI3","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/refactor","name":"refactor","color":"e99695","default":false,"description":"Reorganizes existing code without modifying functionality"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2021-10-06T18:31:38Z","updated_at":"2022-02-02T02:15:27Z","closed_at":null,"author_association":"CONTRIBUTOR","active_lock_reason":null,"body":"Use #57 as a reference.","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/63/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/63/timeline","performed_via_github_app":null,"state_reason":null,"score":1},{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/18","repository_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend","labels_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/18/comments","events_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/18/events","html_url":"https://github.com/uclaacm/teach-la-go-backend/issues/18","id":722796370,"node_id":"MDU6SXNzdWU3MjI3OTYzNzA=","number":18,"title":"Rigorous testing for DeleteUser","user":{"login":"krashanoff","id":7704542,"node_id":"MDQ6VXNlcjc3MDQ1NDI=","avatar_url":"https://avatars.githubusercontent.com/u/7704542?v=4","gravatar_id":"","url":"https://api.github.com/users/krashanoff","html_url":"https://github.com/krashanoff","followers_url":"https://api.github.com/users/krashanoff/followers","following_url":"https://api.github.com/users/krashanoff/following{/other_user}","gists_url":"https://api.github.com/users/krashanoff/gists{/gist_id}","starred_url":"https://api.github.com/users/krashanoff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krashanoff/subscriptions","organizations_url":"https://api.github.com/users/krashanoff/orgs","repos_url":"https://api.github.com/users/krashanoff/repos","events_url":"https://api.github.com/users/krashanoff/events{/privacy}","received_events_url":"https://api.github.com/users/krashanoff/received_events","type":"User","site_admin":false},"labels":[{"id":1646363861,"node_id":"MDU6TGFiZWwxNjQ2MzYzODYx","url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":{"login":"matthewcyy","id":28741405,"node_id":"MDQ6VXNlcjI4NzQxNDA1","avatar_url":"https://avatars.githubusercontent.com/u/28741405?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewcyy","html_url":"https://github.com/matthewcyy","followers_url":"https://api.github.com/users/matthewcyy/followers","following_url":"https://api.github.com/users/matthewcyy/following{/other_user}","gists_url":"https://api.github.com/users/matthewcyy/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewcyy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewcyy/subscriptions","organizations_url":"https://api.github.com/users/matthewcyy/orgs","repos_url":"https://api.github.com/users/matthewcyy/repos","events_url":"https://api.github.com/users/matthewcyy/events{/privacy}","received_events_url":"https://api.github.com/users/matthewcyy/received_events","type":"User","site_admin":false},"assignees":[{"login":"matthewcyy","id":28741405,"node_id":"MDQ6VXNlcjI4NzQxNDA1","avatar_url":"https://avatars.githubusercontent.com/u/28741405?v=4","gravatar_id":"","url":"https://api.github.com/users/matthewcyy","html_url":"https://github.com/matthewcyy","followers_url":"https://api.github.com/users/matthewcyy/followers","following_url":"https://api.github.com/users/matthewcyy/following{/other_user}","gists_url":"https://api.github.com/users/matthewcyy/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewcyy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewcyy/subscriptions","organizations_url":"https://api.github.com/users/matthewcyy/orgs","repos_url":"https://api.github.com/users/matthewcyy/repos","events_url":"https://api.github.com/users/matthewcyy/events{/privacy}","received_events_url":"https://api.github.com/users/matthewcyy/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2020-10-16T01:42:17Z","updated_at":"2021-04-24T22:13:09Z","closed_at":null,"author_association":"MEMBER","active_lock_reason":null,"body":"","reactions":{"url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/18/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/teach-la-go-backend/issues/18/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"teach-la-go-backend","description":"🌱 Go Backend for Teach LA's Editor","link":"https://documenter.getpostman.com/view/10224331/TW6xmnn2","repo":"https://github.com/uclaacm/teach-la-go-backend","lang":"Go","topics":["backend","education","go","golang","teach-la"],"image":"/committee-logos/teachla-logo.png","alt":"ACM Teach LA Logo"},"repoURL":"https://api.github.com/repos/uclaacm/teach-la-go-backend"},{"issues":[{"url":"https://api.github.com/repos/uclaacm/bruin-quest-website/issues/135","repository_url":"https://api.github.com/repos/uclaacm/bruin-quest-website","labels_url":"https://api.github.com/repos/uclaacm/bruin-quest-website/issues/135/labels{/name}","comments_url":"https://api.github.com/repos/uclaacm/bruin-quest-website/issues/135/comments","events_url":"https://api.github.com/repos/uclaacm/bruin-quest-website/issues/135/events","html_url":"https://github.com/uclaacm/bruin-quest-website/issues/135","id":741315635,"node_id":"MDU6SXNzdWU3NDEzMTU2MzU=","number":135,"title":"Error messages in Team Registration","user":{"login":"nikilrselvam","id":45131126,"node_id":"MDQ6VXNlcjQ1MTMxMTI2","avatar_url":"https://avatars.githubusercontent.com/u/45131126?v=4","gravatar_id":"","url":"https://api.github.com/users/nikilrselvam","html_url":"https://github.com/nikilrselvam","followers_url":"https://api.github.com/users/nikilrselvam/followers","following_url":"https://api.github.com/users/nikilrselvam/following{/other_user}","gists_url":"https://api.github.com/users/nikilrselvam/gists{/gist_id}","starred_url":"https://api.github.com/users/nikilrselvam/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nikilrselvam/subscriptions","organizations_url":"https://api.github.com/users/nikilrselvam/orgs","repos_url":"https://api.github.com/users/nikilrselvam/repos","events_url":"https://api.github.com/users/nikilrselvam/events{/privacy}","received_events_url":"https://api.github.com/users/nikilrselvam/received_events","type":"User","site_admin":false},"labels":[{"id":2259332854,"node_id":"MDU6TGFiZWwyMjU5MzMyODU0","url":"https://api.github.com/repos/uclaacm/bruin-quest-website/labels/good%20first%20issue","name":"good first issue","color":"7057ff","default":true,"description":"Good for newcomers"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2020-11-12T06:21:23Z","updated_at":"2020-11-12T06:21:23Z","closed_at":null,"author_association":"COLLABORATOR","active_lock_reason":null,"body":"![image](https://user-images.githubusercontent.com/45131126/98902833-7ed65680-24c7-11eb-852c-0dc88440e7c5.png)\r\nWhen entering a team name that has already been taken, it might be better to explicitly say something along the lines of `this name as been taken` as opposed to `invalid team name`, as the latter might be potentially confusing/misleading for users. ","reactions":{"url":"https://api.github.com/repos/uclaacm/bruin-quest-website/issues/135/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"timeline_url":"https://api.github.com/repos/uclaacm/bruin-quest-website/issues/135/timeline","performed_via_github_app":null,"state_reason":null,"score":1}],"project":{"name":"bruin-quest-website","description":"Website for ACM Cyber x Hack x ICPC's Bruin Quest","repo":"https://github.com/uclaacm/bruin-quest-website","lang":"JavaScript","topics":[],"image":"/logo.png","alt":"ACM @ UCLA's Logo"},"repoURL":"https://api.github.com/repos/uclaacm/bruin-quest-website"}] \ No newline at end of file diff --git a/util/constants.ts b/util/constants.ts new file mode 100644 index 0000000..84a6bbf --- /dev/null +++ b/util/constants.ts @@ -0,0 +1,4 @@ +// Good First Issue Projects Constants +export const GFI_ISSUES_SEARCH_QUERY = + 'org:uclaacm+label:"good+first+issue"+is:open'; +export const GFI_REPOS_SEARCH_QUERY = 'good-first-issues:>0+org:uclaacm'; \ No newline at end of file diff --git a/util/projectRequest.ts b/util/projectRequest.ts index 4c4a082..3859a80 100644 --- a/util/projectRequest.ts +++ b/util/projectRequest.ts @@ -1,8 +1,9 @@ import { Octokit } from '@octokit/core'; import { paginateRest } from '@octokit/plugin-paginate-rest'; import githubColorsFixture from '../data/githubColors.json'; -import { Project, ACMCommitteeTopics, GitHubColors } from './types'; +import { Project, ACMCommitteeTopics, GitHubColors, GitHubRepo, GitHubIssue, GFIProject } from './types'; +//get projects within uclaacm org export async function getProjects(): Promise { const PaginatedOctokit = Octokit.plugin(paginateRest); const octokit = new PaginatedOctokit(); @@ -11,34 +12,102 @@ export async function getProjects(): Promise { per_page: 100, }); - const filteredData = projectsResponse.filter((repo) => !repo.archived); + const projects = mapReposToProjects(projectsResponse); + return projects; +} + +//search uclaacm org for good first issues, repos which contain gfis, and match them up +export async function getGoodFirstIssueProjects(): Promise { + const PaginatedOctokit = Octokit.plugin(paginateRest); + const octokit = new PaginatedOctokit(); + const gfiIssuesSearchQuery = 'org:uclaacm+label:"good+first+issue"+is:open'; + const gfiIssuesResponse = await octokit.paginate('GET /search/issues', { + q: gfiIssuesSearchQuery, + }) as GitHubIssue[]; + const gfiReposSearchQuery = 'good-first-issues:>0+org:uclaacm'; + const gfiReposResponse = await octokit.paginate('GET /search/repositories', { + q: gfiReposSearchQuery, + }) as GitHubRepo[]; + const repoMap = new Map(); + //turn the gfiReposResponse into a map of url and the entire repo + for (const repo of gfiReposResponse){ + repoMap.set(repo.url,repo); + } + const gfiProjects = mapIssuesToProjects(gfiIssuesResponse, repoMap); + return gfiProjects; +} + +function mapIssuesToProjects(issues: GitHubIssue[], repoMap: Map) : GFIProject[]{ + //turn the issues into a map of projects and a list of issues associated with it + const mappedRepos = new Map(); + // console.log(issues); + if(issues.length ==0){ + //console.error('No open good first issues!'); + return []; + } + for (const issue of issues){ + const issueRepoURL = issue.repository_url; + //if map already contains that project, append to array of issues, or make a new array containing it + mappedRepos.set(issueRepoURL,[...mappedRepos.get(issueRepoURL) ?? [], issue]); + } + + const mapIter = mappedRepos.entries(); + + //turn everything into a gfiProject[] + const gfis : GFIProject[] = []; + let itVal = mapIter.next(); + while(!itVal.done){ + const [repoUrl, repoIssues] = itVal.value; + const correspondingRepo = repoMap.get(repoUrl); + if(!correspondingRepo){ + //console.error('Repo Map went wrong!'); + return gfis; + } + const correspondingProject = convertRepoToProject(correspondingRepo); + gfis.push({ + issues: repoIssues, + project: correspondingProject, + repoURL: repoUrl, + }); + itVal = mapIter.next(); + } + return gfis; +} + +function convertRepoToProject(repo: GitHubRepo): Project { + return repo.homepage + ? { + name: repo.name, + description: repo.description ?? '', + link: repo.homepage ?? '', + repo: repo.html_url, + lang: repo.language ?? '', + topics: repo.topics ?? [], + image: getImageFromTopics(repo.topics).image, + alt: getImageFromTopics(repo.topics).alt, + } + : { + name: repo.name, + description: repo.description ?? '', + repo: repo.html_url ?? '', + lang: repo.language ?? '', + topics: repo.topics ?? [], + image: getImageFromTopics(repo.topics).image, + alt: getImageFromTopics(repo.topics).alt, + }; +} + +function mapReposToProjects(repos: GitHubRepo[]): Project[] { + if (!repos || repos.length < 1) return []; + const filteredData = repos.filter((repo) => !repo.archived); const sortedData = filteredData.sort( (a, b) => new Date(b.updated_at as string).getTime() - new Date(a.updated_at as string).getTime(), ); - return sortedData.map((repo) => - repo.homepage - ? { - name: repo.name, - description: repo.description ?? '', - link: repo.homepage ?? '', - repo: repo.html_url, - lang: repo.language ?? '', - topics: repo.topics ?? [], - image: getImageFromTopics(repo.topics).image, - alt: getImageFromTopics(repo.topics).alt, - } - : { - name: repo.name, - description: repo.description ?? '', - repo: repo.html_url ?? '', - lang: repo.language ?? '', - topics: repo.topics ?? [], - image: getImageFromTopics(repo.topics).image, - alt: getImageFromTopics(repo.topics).alt, - }, + return sortedData.map((repo) => convertRepoToProject(repo), ); } + export async function getGithubColors(): Promise { const githubColorsResponse = await fetch( 'https://raw.githubusercontent.com/ozh/github-colors/master/colors.json', diff --git a/util/types.ts b/util/types.ts index 83d9326..23554c7 100644 --- a/util/types.ts +++ b/util/types.ts @@ -14,14 +14,14 @@ export interface Project { } export enum ACMCommitteeTopics { - AI = 'ai', - CYBER = 'cyber', - DESIGN = 'design', - HACK = 'hack', - ICPC = 'icpc', - STUDIO = 'studio', + AI = 'acm-ai', + CYBER = 'acm-cyber', + DESIGN = 'acm-design', + HACK = 'acm-hack', + ICPC = 'acm-icpc', + STUDIO = 'acm-studio', TEACH_LA = 'teach-la', - W = 'w', + W = 'acm-w', } export interface GitHubColors { @@ -36,5 +36,21 @@ interface GitHubColorData { export type GitHubEvent = Endpoints['GET /orgs/{org}/events']['response']['data'][number]; +export type GitHubRepo = Endpoints['GET /orgs/{org}/repos']['response']['data'][number]; + +export interface GFIProject { + repoURL: string; + project: Project, + issues: GitHubIssue[] +} + +export type GitHubIssues = Endpoints['GET /search/issues']['response']['data']; + +export type GitHubIssue = GitHubIssues['items'][number]; + +export type GithubIssueAssignee = GitHubIssue['assignee']; + +export type GithubIssueAssignees = GithubIssueAssignee[]; + export type GitHubEventPayload = GitHubEvent['payload'];