{"action":"created","comment":{"url":"https://api.github.com/repos/ccnmtl/compiled/pulls/comments/218936641","pull_request_review_id":156984706,"id":218936641,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxODkzNjY0MQ==","diff_hunk":"@@ -0,0 +1,257 @@\n+---\n+title: \"Considerations for Search\"\n+date: \"2018-09-19\"\n+type: \"post\"\n+author_name:  \"Zarina Mustapha\"\n+author_url: \"https://ctl.columbia.edu/about/team/mustapha/\"\n+lede: \"Search functionality requires a thoughtful deliberation so that the\n+model, UI, and UX can best serve the users’s needs. This post lists some useful\n+guiding questions for that feature.\"\n+poster: \"poster-searching-1.jpg\"\n+socmediaimg: \"socmediaimg-searching-1.jpg\"\n+poster_sourceurl: \"\"\n+poster_source: \"\"\n+topics: \n+- User Experience\n+tags: [\"UI\",\"search\"]\n+---\n+\n+When I get asked to add a search functionality to a web-based project, my\n+immediate answer in the form of a question is, “What are you considering for\n+searching?”\n+\n+Let me tell you a story, an amalgamation of true stories while growing up.\n+Let’s call the story “Green Notebook Quest.” I was a young kid, in a hurry to\n+go to school (almost always), and I couldn’t find my school notebook (almost\n+always).  And the exchange between me and my mother went something like this\n+(almost always):\n+\n+__Me:__ Ma, I can’t find my notebook!  \n+__Mom:__ Which notebook?  \n+__Me:__ The green notebook. I had it on the desk by the computer.  \n+__Mom:__ I tidied your desk. It was so messy. I put the books on the shelves in\n+your room. Look there.  \n+__Me:__ Which shelf? I’m looking and I can’t find it!  \n+__Mom:__ The shelf next to the cabinet. I put it next to your textbooks.  \n+__Me:__ (_frustrated_) That’s not the green notebook. It’s green, but not the\n+one I’m looking for! A smaller book. And it has a cat sticker on it. I need it\n+for my Math homework.  \n+__Mom:__ There are two shelves. Check the other shelf!  \n+__Me:__ (_flipped through books on the other shelf_) I am, and I still can’t\n+find it!  \n+__Mom:__ (_walks into my room_) Did you look everywhere on the shelf?  \n+__Me:__ Yes!  \n+__Mom:__ (_reached for a green notebook with cat sticker, on the shelf_) Is\n+this the notebook?  \n+__Me:__ It wasn’t there when I went through that shelf. I swear I checked it!\n+It wasn’t there a minute ago!  \n+__Mom:__ (_held it up to my face_) That’s because you’ve been looking for it\n+with your nose.\n+\n+We all know this story, we’ve experienced this at least a few times in our\n+lives, and it is to show that many Moms (or Dads) are the best search and\n+analytics engine. So why am I telling you this story?\n+\n+Search functionality can be complex, and search UI can be complicated. To help\n+design and develop the search feature, we need user stories and diagrams, and\n+to lead us to these deliverables, we should ask a few guiding questions. Let’s\n+consider that universal story again to help us deconstruct and reassemble our\n+approach to search functionality.\n+\n+### Who am I: Who is the user? ###\n+The persona of the user will guide us in deciding what the\n+[principle of least astonishment is](https://en.wikipedia.org/wiki/Principle_of_least_astonishment)\n+for the sets of users, and inform us how we should design the UI for the search\n+functionality. What can we assume about their experience with web searching?\n+What is the basis of our assumptions? What devices do they use? Will, or should\n+search be available on all devices? Knowing the user will lead us to __what__,\n+__where__, and __how__ they would want to search for things.\n+\n+### What is the user searching for? ###\n+To put simply, the user is searching for an object. But what attributes define\n+the object? Are there relationships with other objects? Are these relationships\n+relevant to the search? In the “Green Notebook Quest” story, the object that I\n+was looking for can initially be broken down as follows:  \n+`type: notebook`  \n+`color: green`\n+\n+And as it turned out, there were more than one green notebook.\n+\n+<div class=\"row\">\n+<div class=\"col-sm-3\">\n+<img src=\"/img/assets/notebook-lg.png\">\n+</div>\n+<div class=\"col-sm-3\">\n+<img src=\"/img/assets/notebook-md.png\">\n+</div>\n+</div>\n+\n+But then, in the midst of frustration, I expanded my query to include other\n+attributes, such as the object’s dimensions (“smaller”), what it’s being used\n+for, or title, (“Math”), and tags (“cat sticker”): \n+\n+<div class=\"row\">\n+<div class=\"col-sm-4 text-center\">\n+<img src=\"/img/assets/notebook-lg.png\">\n+<p><i class=\"fa fa-times-circle fa-3x text-muted\" aria-hidden=\"false\"></i></p>\n+</div>\n+<div class=\"col-sm-8\">\n+<code>\n+type: notebook<br />\n+color: green<br />\n+title: \"English Comp\"<br />\n+tag: <br />\n+size: \"large\"<br />\n+width: 9in<br />\n+height: 14in\n+</code>\n+</div>\n+</div>\n+<hr />\n+<div class=\"row\">\n+<div class=\"col-sm-4 text-center\">\n+<img src=\"/img/assets/notebook-md.png\">\n+<p><i class=\"fa fa-check-circle fa-3x text-success\"\n+aria-hidden=\"false\"></i></p>\n+</div>\n+<div class=\"col-sm-8\">\n+<code>\n+type: notebook<br />\n+color: green<br />\n+title: \"Math\"<br />\n+tag: cat<br />\n+size: \"small\"<br />\n+width: 7in<br />\n+height: 11in\n+</code>\n+</div>\n+</div>\n+\n+From this example, we see that it is helpful to understand the definition of\n+the object the is searching for, in any given application, so that we can model\n+the object better and design intuitive UI and UX for that search.\n+\n+### What does the user need search functionality for? ###\n+What are the conditions for this functionality: quick search or deeper search?\n+Should it be available everywhere on the site? How does search fit into the\n+overall experience of the site? How does it add to, or impede the user’s\n+learning experience? Is the search functionality a solution to poor information\n+architecture, or a way to address a complex site model? Do we need to track the\n+search patterns? This set of questions can provide insights on what the search\n+should do, anticipate user search patters, and shape the expected UX around it.\n+\n+### How is search being done? ###\n+When we have user stories and requirements written on the search feature, we\n+can now think about how to implement them. What search engines will we use?\n+ComplilED, for example, uses [lunr.js](https://lunrjs.com) because this blog is\n+a Hugo-generated static site with small dataset, and we decided that full-text\n+search is good enough. For the mapping project\n+_[Writ Large](https://writlarge.ctl.columbia.edu/map/)_,\n+a Django project with a manageable size of data set, we use Django PostgreSQL\n+search tools. We decided to go with\n+[Solr](http://lucene.apache.org/solr/) for\n+[Footprints](https://footprints.ccnmtl.columbia.edu/search/) because there are\n+thousands of records to go through, using much more robust faceted search.\n+\n+However, considerations for search doesn’t simply stop with the technology.\n+Let’s go back to the “Green Notebook Quest.” The search was a two-step process.\n+Initially I did a simple search, then I filtered the results with certain\n+parameters.\n+\n+```\n+Initial query \"green notebook\"\n+---------------\n+Filter by:\n+    size: \"small\"\n+    tag: \"cat\"\n+    use: \"math\"\n+```\n+\n+But wait, the initial query can still be broken down to a two-step process:\n+\n+```\n+Initial query:\n+    q1:\n+        type: \"notebook\"\n+    q2:\n+        color: \"green\"\n+---------------\n+Filter by:\n+    size: \"small\"\n+    tag: \"cat\"\n+    use: \"math\"\n+```\n+\n+So now, we have to decide how to design the UI and UX around this simple search\n+pattern. Can we assume that the user has a certain knowledge of superuser\n+searches so we can condense everything into one search field, i.e.\n+`type:notebook AND color:green AND size:\"small\"` etc? Or should we design an\n+elegant search interface that appeals more to the user’s intuition? We did the\n+latter for [Footprints](https://footprints.ccnmtl.columbia.edu/search/) search.\n+\n+### Where is the user searching? ###\n+The may be instances where we set limits to user searches (search only","path":"content/articles/searching-1.md","position":193,"original_position":193,"commit_id":"a438bcd60de8e7cdebde72996dcc09c888eeb741","original_commit_id":"a438bcd60de8e7cdebde72996dcc09c888eeb741","user":{"login":"sdreher","id":141369,"node_id":"MDQ6VXNlcjE0MTM2OQ==","avatar_url":"https://avatars2.githubusercontent.com/u/141369?v=4","gravatar_id":"","url":"https://api.github.com/users/sdreher","html_url":"https://github.com/sdreher","followers_url":"https://api.github.com/users/sdreher/followers","following_url":"https://api.github.com/users/sdreher/following{/other_user}","gists_url":"https://api.github.com/users/sdreher/gists{/gist_id}","starred_url":"https://api.github.com/users/sdreher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sdreher/subscriptions","organizations_url":"https://api.github.com/users/sdreher/orgs","repos_url":"https://api.github.com/users/sdreher/repos","events_url":"https://api.github.com/users/sdreher/events{/privacy}","received_events_url":"https://api.github.com/users/sdreher/received_events","type":"User","site_admin":false},"body":"`There` may be","created_at":"2018-09-19T19:36:36Z","updated_at":"2018-09-19T19:43:01Z","html_url":"https://github.com/ccnmtl/compiled/pull/176#discussion_r218936641","pull_request_url":"https://api.github.com/repos/ccnmtl/compiled/pulls/176","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/ccnmtl/compiled/pulls/comments/218936641"},"html":{"href":"https://github.com/ccnmtl/compiled/pull/176#discussion_r218936641"},"pull_request":{"href":"https://api.github.com/repos/ccnmtl/compiled/pulls/176"}}},"pull_request":{"url":"https://api.github.com/repos/ccnmtl/compiled/pulls/176","id":216741589,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE2NzQxNTg5","html_url":"https://github.com/ccnmtl/compiled/pull/176","diff_url":"https://github.com/ccnmtl/compiled/pull/176.diff","patch_url":"https://github.com/ccnmtl/compiled/pull/176.patch","issue_url":"https://api.github.com/repos/ccnmtl/compiled/issues/176","number":176,"state":"open","locked":false,"title":"Zarina Sept post on search","user":{"login":"zmustapha","id":976843,"node_id":"MDQ6VXNlcjk3Njg0Mw==","avatar_url":"https://avatars2.githubusercontent.com/u/976843?v=4","gravatar_id":"","url":"https://api.github.com/users/zmustapha","html_url":"https://github.com/zmustapha","followers_url":"https://api.github.com/users/zmustapha/followers","following_url":"https://api.github.com/users/zmustapha/following{/other_user}","gists_url":"https://api.github.com/users/zmustapha/gists{/gist_id}","starred_url":"https://api.github.com/users/zmustapha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zmustapha/subscriptions","organizations_url":"https://api.github.com/users/zmustapha/orgs","repos_url":"https://api.github.com/users/zmustapha/repos","events_url":"https://api.github.com/users/zmustapha/events{/privacy}","received_events_url":"https://api.github.com/users/zmustapha/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-09-19T18:56:35Z","updated_at":"2018-09-19T19:43:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"719f3a6e87eeb860308d392505ca167cb5d276f4","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/ccnmtl/compiled/pulls/176/commits","review_comments_url":"https://api.github.com/repos/ccnmtl/compiled/pulls/176/comments","review_comment_url":"https://api.github.com/repos/ccnmtl/compiled/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ccnmtl/compiled/issues/176/comments","statuses_url":"https://api.github.com/repos/ccnmtl/compiled/statuses/a438bcd60de8e7cdebde72996dcc09c888eeb741","head":{"label":"ccnmtl:zarina-sept-post","ref":"zarina-sept-post","sha":"a438bcd60de8e7cdebde72996dcc09c888eeb741","user":{"login":"ccnmtl","id":52456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUyNDU2","avatar_url":"https://avatars0.githubusercontent.com/u/52456?v=4","gravatar_id":"","url":"https://api.github.com/users/ccnmtl","html_url":"https://github.com/ccnmtl","followers_url":"https://api.github.com/users/ccnmtl/followers","following_url":"https://api.github.com/users/ccnmtl/following{/other_user}","gists_url":"https://api.github.com/users/ccnmtl/gists{/gist_id}","starred_url":"https://api.github.com/users/ccnmtl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ccnmtl/subscriptions","organizations_url":"https://api.github.com/users/ccnmtl/orgs","repos_url":"https://api.github.com/users/ccnmtl/repos","events_url":"https://api.github.com/users/ccnmtl/events{/privacy}","received_events_url":"https://api.github.com/users/ccnmtl/received_events","type":"Organization","site_admin":false},"repo":{"id":53147050,"node_id":"MDEwOlJlcG9zaXRvcnk1MzE0NzA1MA==","name":"compiled","full_name":"ccnmtl/compiled","private":false,"owner":{"login":"ccnmtl","id":52456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUyNDU2","avatar_url":"https://avatars0.githubusercontent.com/u/52456?v=4","gravatar_id":"","url":"https://api.github.com/users/ccnmtl","html_url":"https://github.com/ccnmtl","followers_url":"https://api.github.com/users/ccnmtl/followers","following_url":"https://api.github.com/users/ccnmtl/following{/other_user}","gists_url":"https://api.github.com/users/ccnmtl/gists{/gist_id}","starred_url":"https://api.github.com/users/ccnmtl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ccnmtl/subscriptions","organizations_url":"https://api.github.com/users/ccnmtl/orgs","repos_url":"https://api.github.com/users/ccnmtl/repos","events_url":"https://api.github.com/users/ccnmtl/events{/privacy}","received_events_url":"https://api.github.com/users/ccnmtl/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ccnmtl/compiled","description":"Hugo version of our Compiled blog","fork":false,"url":"https://api.github.com/repos/ccnmtl/compiled","forks_url":"https://api.github.com/repos/ccnmtl/compiled/forks","keys_url":"https://api.github.com/repos/ccnmtl/compiled/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ccnmtl/compiled/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ccnmtl/compiled/teams","hooks_url":"https://api.github.com/repos/ccnmtl/compiled/hooks","issue_events_url":"https://api.github.com/repos/ccnmtl/compiled/issues/events{/number}","events_url":"https://api.github.com/repos/ccnmtl/compiled/events","assignees_url":"https://api.github.com/repos/ccnmtl/compiled/assignees{/user}","branches_url":"https://api.github.com/repos/ccnmtl/compiled/branches{/branch}","tags_url":"https://api.github.com/repos/ccnmtl/compiled/tags","blobs_url":"https://api.github.com/repos/ccnmtl/compiled/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ccnmtl/compiled/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ccnmtl/compiled/git/refs{/sha}","trees_url":"https://api.github.com/repos/ccnmtl/compiled/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ccnmtl/compiled/statuses/{sha}","languages_url":"https://api.github.com/repos/ccnmtl/compiled/languages","stargazers_url":"https://api.github.com/repos/ccnmtl/compiled/stargazers","contributors_url":"https://api.github.com/repos/ccnmtl/compiled/contributors","subscribers_url":"https://api.github.com/repos/ccnmtl/compiled/subscribers","subscription_url":"https://api.github.com/repos/ccnmtl/compiled/subscription","commits_url":"https://api.github.com/repos/ccnmtl/compiled/commits{/sha}","git_commits_url":"https://api.github.com/repos/ccnmtl/compiled/git/commits{/sha}","comments_url":"https://api.github.com/repos/ccnmtl/compiled/comments{/number}","issue_comment_url":"https://api.github.com/repos/ccnmtl/compiled/issues/comments{/number}","contents_url":"https://api.github.com/repos/ccnmtl/compiled/contents/{+path}","compare_url":"https://api.github.com/repos/ccnmtl/compiled/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ccnmtl/compiled/merges","archive_url":"https://api.github.com/repos/ccnmtl/compiled/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ccnmtl/compiled/downloads","issues_url":"https://api.github.com/repos/ccnmtl/compiled/issues{/number}","pulls_url":"https://api.github.com/repos/ccnmtl/compiled/pulls{/number}","milestones_url":"https://api.github.com/repos/ccnmtl/compiled/milestones{/number}","notifications_url":"https://api.github.com/repos/ccnmtl/compiled/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ccnmtl/compiled/labels{/name}","releases_url":"https://api.github.com/repos/ccnmtl/compiled/releases{/id}","deployments_url":"https://api.github.com/repos/ccnmtl/compiled/deployments","created_at":"2016-03-04T15:58:33Z","updated_at":"2018-08-29T15:12:43Z","pushed_at":"2018-09-19T18:56:35Z","git_url":"git://github.com/ccnmtl/compiled.git","ssh_url":"git@github.com:ccnmtl/compiled.git","clone_url":"https://github.com/ccnmtl/compiled.git","svn_url":"https://github.com/ccnmtl/compiled","homepage":"https://compiled.ctl.columbia.edu/","size":8802,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":2,"license":null,"forks":1,"open_issues":2,"watchers":1,"default_branch":"master"}},"base":{"label":"ccnmtl:master","ref":"master","sha":"7ebc90d4c89f29a22b9d8d11e4e6a0617cc4fc50","user":{"login":"ccnmtl","id":52456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUyNDU2","avatar_url":"https://avatars0.githubusercontent.com/u/52456?v=4","gravatar_id":"","url":"https://api.github.com/users/ccnmtl","html_url":"https://github.com/ccnmtl","followers_url":"https://api.github.com/users/ccnmtl/followers","following_url":"https://api.github.com/users/ccnmtl/following{/other_user}","gists_url":"https://api.github.com/users/ccnmtl/gists{/gist_id}","starred_url":"https://api.github.com/users/ccnmtl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ccnmtl/subscriptions","organizations_url":"https://api.github.com/users/ccnmtl/orgs","repos_url":"https://api.github.com/users/ccnmtl/repos","events_url":"https://api.github.com/users/ccnmtl/events{/privacy}","received_events_url":"https://api.github.com/users/ccnmtl/received_events","type":"Organization","site_admin":false},"repo":{"id":53147050,"node_id":"MDEwOlJlcG9zaXRvcnk1MzE0NzA1MA==","name":"compiled","full_name":"ccnmtl/compiled","private":false,"owner":{"login":"ccnmtl","id":52456,"node_id":"MDEyOk9yZ2FuaXphdGlvbjUyNDU2","avatar_url":"https://avatars0.githubusercontent.com/u/52456?v=4","gravatar_id":"","url":"https://api.github.com/users/ccnmtl","html_url":"https://github.com/ccnmtl","followers_url":"https://api.github.com/users/ccnmtl/followers","following_url":"https://api.github.com/users/ccnmtl/following{/other_user}","gists_url":"https://api.github.com/users/ccnmtl/gists{/gist_id}","starred_url":"https://api.github.com/users/ccnmtl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ccnmtl/subscriptions","organizations_url":"https://api.github.com/users/ccnmtl/orgs","repos_url":"https://api.github.com/users/ccnmtl/repos","events_url":"https://api.github.com/users/ccnmtl/events{/privacy}","received_events_url":"https://api.github.com/users/ccnmtl/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ccnmtl/compiled","description":"Hugo version of our Compiled blog","fork":false,"url":"https://api.github.com/repos/ccnmtl/compiled","forks_url":"https://api.github.com/repos/ccnmtl/compiled/forks","keys_url":"https://api.github.com/repos/ccnmtl/compiled/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ccnmtl/compiled/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ccnmtl/compiled/teams","hooks_url":"https://api.github.com/repos/ccnmtl/compiled/hooks","issue_events_url":"https://api.github.com/repos/ccnmtl/compiled/issues/events{/number}","events_url":"https://api.github.com/repos/ccnmtl/compiled/events","assignees_url":"https://api.github.com/repos/ccnmtl/compiled/assignees{/user}","branches_url":"https://api.github.com/repos/ccnmtl/compiled/branches{/branch}","tags_url":"https://api.github.com/repos/ccnmtl/compiled/tags","blobs_url":"https://api.github.com/repos/ccnmtl/compiled/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ccnmtl/compiled/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ccnmtl/compiled/git/refs{/sha}","trees_url":"https://api.github.com/repos/ccnmtl/compiled/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ccnmtl/compiled/statuses/{sha}","languages_url":"https://api.github.com/repos/ccnmtl/compiled/languages","stargazers_url":"https://api.github.com/repos/ccnmtl/compiled/stargazers","contributors_url":"https://api.github.com/repos/ccnmtl/compiled/contributors","subscribers_url":"https://api.github.com/repos/ccnmtl/compiled/subscribers","subscription_url":"https://api.github.com/repos/ccnmtl/compiled/subscription","commits_url":"https://api.github.com/repos/ccnmtl/compiled/commits{/sha}","git_commits_url":"https://api.github.com/repos/ccnmtl/compiled/git/commits{/sha}","comments_url":"https://api.github.com/repos/ccnmtl/compiled/comments{/number}","issue_comment_url":"https://api.github.com/repos/ccnmtl/compiled/issues/comments{/number}","contents_url":"https://api.github.com/repos/ccnmtl/compiled/contents/{+path}","compare_url":"https://api.github.com/repos/ccnmtl/compiled/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ccnmtl/compiled/merges","archive_url":"https://api.github.com/repos/ccnmtl/compiled/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ccnmtl/compiled/downloads","issues_url":"https://api.github.com/repos/ccnmtl/compiled/issues{/number}","pulls_url":"https://api.github.com/repos/ccnmtl/compiled/pulls{/number}","milestones_url":"https://api.github.com/repos/ccnmtl/compiled/milestones{/number}","notifications_url":"https://api.github.com/repos/ccnmtl/compiled/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ccnmtl/compiled/labels{/name}","releases_url":"https://api.github.com/repos/ccnmtl/compiled/releases{/id}","deployments_url":"https://api.github.com/repos/ccnmtl/compiled/deployments","created_at":"2016-03-04T15:58:33Z","updated_at":"2018-08-29T15:12:43Z","pushed_at":"2018-09-19T18:56:35Z","git_url":"git://github.com/ccnmtl/compiled.git","ssh_url":"git@github.com:ccnmtl/compiled.git","clone_url":"https://github.com/ccnmtl/compiled.git","svn_url":"https://github.com/ccnmtl/compiled","homepage":"https://compiled.ctl.columbia.edu/","size":8802,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":2,"license":null,"forks":1,"open_issues":2,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ccnmtl/compiled/pulls/176"},"html":{"href":"https://github.com/ccnmtl/compiled/pull/176"},"issue":{"href":"https://api.github.com/repos/ccnmtl/compiled/issues/176"},"comments":{"href":"https://api.github.com/repos/ccnmtl/compiled/issues/176/comments"},"review_comments":{"href":"https://api.github.com/repos/ccnmtl/compiled/pulls/176/comments"},"review_comment":{"href":"https://api.github.com/repos/ccnmtl/compiled/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ccnmtl/compiled/pulls/176/commits"},"statuses":{"href":"https://api.github.com/repos/ccnmtl/compiled/statuses/a438bcd60de8e7cdebde72996dcc09c888eeb741"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"sdreher"}}