github.noel.ga Open in urlscan Pro
2a06:98c1:3120::3  Malicious Activity! Public Scan

URL: https://github.noel.ga/
Submission: On October 28 via api from JP — Scanned from NL

Form analysis 2 forms found in the DOM

GET /search

<form class="js-site-search-form" role="search" aria-label="Site" data-unscoped-search-url="/search" data-turbo="false" action="/search" accept-charset="UTF-8" method="get">
  <label class="form-control header-search-wrapper input-sm p-0 js-chromeless-input-container header-search-wrapper-jump-to position-relative d-flex flex-justify-between flex-items-center">
    <input type="text" class="form-control js-site-search-focus header-search-input jump-to-field js-jump-to-field" data-hotkey="s,/" name="q" data-test-selector="nav-search-input" placeholder="Search GitHub" data-unscoped-placeholder="Search GitHub"
      data-scoped-placeholder="Search" autocapitalize="off" role="combobox" aria-haspopup="listbox" aria-expanded="false" aria-autocomplete="list" aria-controls="jump-to-results" aria-label="Search GitHub"
      data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations" spellcheck="false" autocomplete="off">
    <input type="hidden" data-csrf="true" class="js-data-jump-to-suggestions-path-csrf" value="fX5KCYJLwqRlMmcJVzQxUz738gWB62HkCYAZ/8xSePBMq4+gvU+PwErJsKsa9/T/xhzzmNwrvpR3jVyWz/fb4Q==">
    <input type="hidden" class="js-site-search-type-field" name="type">
    <svg xmlns="http://www.w3.org/2000/svg" width="22" height="20" aria-hidden="true" class="mr-1 header-search-key-slash">
      <path fill="none" stroke="#979A9C" opacity=".4" d="M3.5.5h12c1.7 0 3 1.3 3 3v13c0 1.7-1.3 3-3 3h-12c-1.7 0-3-1.3-3-3v-13c0-1.7 1.3-3 3-3z"></path>
      <path fill="#979A9C" d="M11.8 6L8 15.1h-.9L10.8 6h1z"></path>
    </svg>
    <div class="Box position-absolute overflow-hidden d-none jump-to-suggestions js-jump-to-suggestions-container">
      <ul class="d-none js-jump-to-suggestions-template-container">
        <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-suggestion" role="option">
          <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="suggestion">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg title="Repository" aria-label="Repository" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path>
</svg>
      <svg title="Project" aria-label="Project" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path>
</svg>
      <svg title="Search" aria-label="Search" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path>
</svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub">
        Search
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
        </li>
      </ul>
      <ul class="d-none js-jump-to-no-results-template-container">
        <li class="d-flex flex-justify-center flex-items-center f5 d-none js-jump-to-suggestion p-2">
          <span class="color-fg-muted">No suggested jump to results</span>
        </li>
      </ul>
      <ul id="jump-to-results" role="listbox" class="p-0 m-0 js-navigation-container jump-to-suggestions-results-container js-jump-to-suggestions-results-container">
        <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-scoped-search d-none" role="option">
          <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="scoped_search">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg title="Repository" aria-label="Repository" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path>
</svg>
      <svg title="Project" aria-label="Project" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path>
</svg>
      <svg title="Search" aria-label="Search" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path>
</svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub">
        Search
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
        </li>
        <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-owner-scoped-search d-none" role="option">
          <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="owner_scoped_search">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg title="Repository" aria-label="Repository" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path>
</svg>
      <svg title="Project" aria-label="Project" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path>
</svg>
      <svg title="Search" aria-label="Search" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path>
</svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub">
        Search
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
        </li>
        <li class="d-flex flex-justify-start flex-items-center p-0 f5 navigation-item js-navigation-item js-jump-to-global-search d-none" role="option">
          <a tabindex="-1" class="no-underline d-flex flex-auto flex-items-center jump-to-suggestions-path js-jump-to-suggestion-path js-navigation-open p-2" href="" data-item-type="global_search">
    <div class="jump-to-octicon js-jump-to-octicon flex-shrink-0 mr-2 text-center d-none">
      <svg title="Repository" aria-label="Repository" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-repo js-jump-to-octicon-repo d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M2 2.5A2.5 2.5 0 014.5 0h8.75a.75.75 0 01.75.75v12.5a.75.75 0 01-.75.75h-2.5a.75.75 0 110-1.5h1.75v-2h-8a1 1 0 00-.714 1.7.75.75 0 01-1.072 1.05A2.495 2.495 0 012 11.5v-9zm10.5-1V9h-8c-.356 0-.694.074-1 .208V2.5a1 1 0 011-1h8zM5 12.25v3.25a.25.25 0 00.4.2l1.45-1.087a.25.25 0 01.3 0L8.6 15.7a.25.25 0 00.4-.2v-3.25a.25.25 0 00-.25-.25h-3.5a.25.25 0 00-.25.25z"></path>
</svg>
      <svg title="Project" aria-label="Project" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-project js-jump-to-octicon-project d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M1.75 0A1.75 1.75 0 000 1.75v12.5C0 15.216.784 16 1.75 16h12.5A1.75 1.75 0 0016 14.25V1.75A1.75 1.75 0 0014.25 0H1.75zM1.5 1.75a.25.25 0 01.25-.25h12.5a.25.25 0 01.25.25v12.5a.25.25 0 01-.25.25H1.75a.25.25 0 01-.25-.25V1.75zM11.75 3a.75.75 0 00-.75.75v7.5a.75.75 0 001.5 0v-7.5a.75.75 0 00-.75-.75zm-8.25.75a.75.75 0 011.5 0v5.5a.75.75 0 01-1.5 0v-5.5zM8 3a.75.75 0 00-.75.75v3.5a.75.75 0 001.5 0v-3.5A.75.75 0 008 3z"></path>
</svg>
      <svg title="Search" aria-label="Search" role="img" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-search js-jump-to-octicon-search d-none flex-shrink-0">
    <path fill-rule="evenodd" d="M11.5 7a4.499 4.499 0 11-8.998 0A4.499 4.499 0 0111.5 7zm-.82 4.74a6 6 0 111.06-1.06l3.04 3.04a.75.75 0 11-1.06 1.06l-3.04-3.04z"></path>
</svg>
    </div>

    <img class="avatar mr-2 flex-shrink-0 js-jump-to-suggestion-avatar d-none" alt="" aria-label="Team" src="" width="28" height="28">

    <div class="jump-to-suggestion-name js-jump-to-suggestion-name flex-auto overflow-hidden text-left no-wrap css-truncate css-truncate-target">
    </div>

    <div class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none js-jump-to-badge-search">
      <span class="js-jump-to-badge-search-text-default d-none" aria-label="in all of GitHub">
        Search
      </span>
      <span class="js-jump-to-badge-search-text-global d-none" aria-label="in all of GitHub">
        All GitHub
      </span>
      <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>

    <div aria-hidden="true" class="border rounded-2 flex-shrink-0 color-bg-subtle px-1 color-fg-muted ml-1 f6 d-none d-on-nav-focus js-jump-to-badge-jump">
      Jump to
      <span class="d-inline-block ml-1 v-align-middle">↵</span>
    </div>
  </a>
        </li>
      </ul>
    </div>
  </label>
</form>

GET /signup

<form data-turbo="false" class="mx-auto mx-md-0 col-5-max js-signup-form position-relative z-2" autocomplete="off" action="/signup" accept-charset="UTF-8" method="get">
  <div class="d-flex flex-column flex-sm-row flex-items-center">
    <dl class="col-12 my-0 pb-2 pb-sm-0 pr-0 pr-sm-2 flex-auto">
      <dt>
        <label for="user_email" class="sr-only">Email address</label>
      </dt>
      <dd>
        <input class="form-control border-0 f4-mktg py-3 px-4 width-full" style="height: 3rem" placeholder="Email address" type="email" name="user_email" id="user_email" autocomplete="off" spellcheck="false">
      </dd>
    </dl>
    <input type="hidden" name="source" value="form-home-signup">
    <button class="btn-mktg width-full width-sm-auto btn-signup-mktg"
      data-analytics-event="{&quot;category&quot;:&quot;Sign up&quot;,&quot;action&quot;:&quot;click to sign up for account&quot;,&quot;label&quot;:&quot;ref_page:/;ref_cta:Sign up for GitHub;ref_loc:hero launchpad&quot;}" type="submit"> Sign up for
      GitHub </button>
  </div>
</form>

Text Content

Skip to content
Toggle navigation
Sign up

 * Product
    * Actions
      Automate any workflow
    * Packages
      Host and manage packages
    * Security
      Find and fix vulnerabilities
    * Codespaces
      Instant dev environments
    * Copilot
      Write better code with AI
    * Code review
      Manage code changes
    * Issues
      Plan and track work
    * Discussions
      Collaborate outside of code
   
    * Explore
    * All features
    * Documentation
    * GitHub Skills
    * Blog

 * Solutions
    * By Plan
    * Enterprise
    * Teams
    * Compare all
   
    * By Solution
    * CI/CD & Automation
    * DevOps
    * DevSecOps
   
    * Case Studies
    * Customer Stories
    * Resources

 * Open Source
    * GitHub Sponsors
      Fund open source developers
   
    * The ReadME Project
      GitHub community articles
   
    * Repositories
    * Topics
    * Trending
    * Collections

 * Pricing

 * Search All GitHub ↵
   Jump to ↵

 * No suggested jump to results

 * Search All GitHub ↵
   Jump to ↵
 * Search All GitHub ↵
   Jump to ↵
 * Search All GitHub ↵
   Jump to ↵

Sign in
Sign up

{{ message }}
GitHub Universe: A global developer event
See the full schedule and register now



LET'S BUILD FROM HERE, OPENLY INSTANTLY AUTOMATICALLY SECURELY MAGICALLY
COLLABORATIVELY TOGETHER.

The complete developer platform to build, scale, and deliver secure software.

Email address Sign up for GitHub


83+ MILLION

Developers


4+ MILLION

Organizations


200+ MILLION

Repositories


90%

Fortune 100



#34234 facebook/react



BUILD LIKE THE BEST WITH GITHUB ENTERPRISE

Take collaboration to the next level with security and administrative features
built for teams.

Start a free trial Contact Sales

Code Collaborate Develop Automate Secure Community
Sign up


GIVE YOUR CODE A HOME IN THE CLOUD


 * RECORD OR REWIND ANY CHANGE TO YOUR CODE TO KEEP YOU AND YOUR TEAM IN SYNC.
   HOST IT ALL FOR FREE WITH UNLIMITED PUBLIC AND PRIVATE REPOSITORIES.
   
   Sign up for GitHub
 * jasonetco added some commits 8 minutes ago
 * Updated README.md

octocat-classifier
assets
tests
LICENSE
README.md
index.js
package.json
README.md
app.js
index.html

          1
          2
          3
          4
          5
          6
          7
          8
          9
          10
          11
          12
          13
          14
          15
          16
          17
          18
          19
          20
          21
          22
          23
          24
          25
          26
          27
          28
          29
          30
          

              # Octocat Classifier :octopus: :cat: :mag:

              ![](https://img.shields.io/badge/build-passing-brightgreen) ![](https://img.shields.io/badge/coverage-90%25-green) ![](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen)

              As the name suggests, Octocat Classifier is used to determine whether a given image contains an Octocat. It is trained with images from the [Octodex](1), images shared with [#MyOctocat on Twitter](2), and [photographs of laptops with :octocat: stickers on them]().

              ## Installation

              ```
              git clone https://github.com/jasonetco/octocat-classifier
              ```
            

→ ~/octocat-classifier $ gh repo create octocat-classifier
✓ Created repository jasonetco/octocat-classifier on GitHub
✓ Added remote https://github.com/jasonetco/octocat-classifier.git
 
→ ~/octocat-classifier $ git push origin main
 * Support Octocats shared on Twitter
 * Created index.js


 * BUILD ON WHAT'S BEEN BUILT
   
   
   WRITE LESS CODE THANKS TO THE WORLD'S LARGEST SOFTWARE PACKAGE REGISTRY. FIND
   THE BEST COMMUNITY-APPROVED PROJECTS TO ACCELERATE YOUR WORK, THEN SHARE IT
   WITH THE WORLD WITH NPM AND GITHUB PACKAGES.
   
   → ~/octocat-classifier $ npm install eslint
   + eslint@7.8.1
     added 109 packages from 64 contributors and audited 109 packages in 3.491s
    
   9 packages are looking for funding
     run `npm fund` for details
    
   found 0 vulnerabilities
   → ~/octocat-classifier $
 * Added package for javascript linting

git checkout -b origin add-status-screens
origin/add-status-screens

+3 COLLABORATORS


READY PLAYER TWO. SCALE YOUR TEAM TO ANY SIZE IN THE CLOUD.

Create a new organization for free



 * BETTER CODE STARTS WITH PULL REQUESTS—CONVERSATIONS AROUND YOUR CODE WHERE
   YOU CAN EXPERIMENT, SQUASH BUGS, AND BUILD NEW FEATURES.
   
   


 * CODE REVIEW IS BUILT IN. PULL REQUESTS COVER THE ENTIRE REVIEW FLOW: PROPOSE
   CHANGES, BROWSE CODE, ASK FOR INPUT, MAKE A SUGGESTION, AND SIGN OFF IN ONE
   PLACE.
   
   


 * KNOW WHEN YOUR PULL REQUEST IS READY TO MERGE WHEN EVERYTHING’S GREEN.
   REVIEWS APPROVED? CHECK. TESTS PASSING? CHECK CHECK. NO CONFLICTS? SHIP IT
   ALREADY.
   
   
 * git push origin gh/main


mdo created a new project 👾 OctoArcade Invaders just now


PUT IT ALL ON THE TABLE, OR BOARD, WITH PROJECTS.


MANAGE YOUR TEAM'S WORK AT ANY SCALE EASIER THAN EVER WITH THE ALL-NEW PROJECTS.
BUILT LIKE A SPREADSHEET, PROJECTS GIVE YOU A LIVE CANVAS TO FILTER, SORT, GROUP
ISSUES AND PULL REQUESTS, CREATE CUSTOM VIEWS, AND MORE.

Explore GitHub Issues & Projects
Board

Table



PROJECTS BUILD ON THE POWER OF GITHUB ISSUES—THE MOST POWERFUL AND FLEXIBLE
ISSUE TRACKER FOR DEVELOPERS TO MANAGE TODOS, BUGS, AND FEATURES. TOGETHER,
ISSUES AND PROJECTS ENSURE YOUR TEAM CAN FOCUS ON CODING AND SHIPPING.

GitHub Flavored Markdown
Task lists
Issue forms & templates
Progress indicators
Multiple assignees
Reactions
Labels
Timeline events
Issue forms & templates
Reactions
Multiple assignees
Nested issues
Progress indicators
Task lists
Timeline events
Labels


KEEP WORK MOVING. REVIEW OR MERGE CODE, MANAGE PROJECTS, ISSUES, BROWSE REPOS,
AND MORE WITH GITHUB MOBILE.

AVAILABLE FOR IOS AND ANDROID

 * 
 * 

bash
→ ~/ $ gh pr status
Relevant pull requests in cli/cli
 
Current branch
There is no pull request associated with [main]
 
Created by you
You have no open pull requests
 
Requesting a code review from you
#1401 Correctly handle and set empty fields...
[octocat:emptyBody]
✓ Checks passing
#1357 Added confirmation steps for risk...
[octocat:confirmations]
x 1/3 checks failing
→ ~/ $


WORK HOWEVER YOU WANT. PUT A GUI ON IT WITH GITHUB DESKTOP OR STAY IN THE
COMMAND LINE WITH GITHUB CLI.

AVAILABLE FOR MACOS, WINDOWS, AND LINUX*

 * 
 * 
 * 

* GitHub CLI is available on macOS, Windows, and Linux
* GitHub Desktop is available on macOS and Windows


BLAZING FAST CLOUD DEVELOPER ENVIRONMENTS WITH CODESPACES

Learn more about GitHub Codespaces


THE FUTURE OF CODE IS IN THE CLOUD, NOT YOUR LOCAL COPY. CODESPACES GIVES YOU A
COMPLETE, CONFIGURABLE DEV ENVIRONMENT ON TOP OF A POWERFUL VM IN MINUTES.


VISUAL STUDIO CODE, IN YOUR BROWSER, FULL STOP. CODESPACES BRINGS THE WORLD’S
MOST POPULAR DESKTOP EDITOR TO EVERY REPO. CODE, BUILD, TEST, USE THE TERMINAL,
AND OPEN PULL REQUESTS FROM ANYWHERE.


CUSTOMIZE TO YOUR HEART’S DESIRE. ADD YOUR FAVORITE VS CODE EXTENSIONS, CREATE A
DEVCONTAINER CONFIG FILE, INSTALL NEW THEMES, AND TWEAK YOUR SETTINGS.





GITHUB COPILOT,
YOUR AI CODE COMPANION


GITHUB COPILOT PLUGS DIRECTLY INTO YOUR EDITOR AND SUGGESTS LINES OF CODE—AND
ENTIRE FUNCTIONS. FOCUS ON BUILDING BIGGER THINGS WHILE GITHUB COPILOT TAKES ON
THE REPETITIVE STUFF.

Learn more about GitHub Copilot
JavaScript fetch_tweets.js Python fetch_tweets.py Ruby fetch_tweets.rb
TypeScript fetch_tweets.ts Go fetch_tweets.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14

const token = process.env["TWITTER_BEARER_TOKEN"]



const fetchTweetsFromUser = async (screenName, count) => {

  const response = await fetch(

    `https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=${screenName}&count=${count}`,

    {

      headers: {

        Authorization: `Bearer ${token}`,

      },

    }

  )

  const json = await response.json()

  return json

}

Copilot
Replay
1
2
3
4
5
6
7
8
9
10
11

import tweepy, os # secrets in environment variables



def fetch_tweets_from_user(user_name):

    # authentification

    auth = tweepy.OAuthHandler(os.environ['TWITTER_KEY'], os.environ['TWITTER_SECRET'])

    auth.set_access_token(os.environ['TWITTER_TOKEN'], os.environ['TWITTER_TOKEN_SECRET'])

    api = tweepy.API(auth)



    # fetch tweets

    tweets = api.user_timeline(screen_name=user, count=200, include_rts=False)

    return tweets

Copilot
Replay
1
2
3
4
5
6
7
8
9
10
11
12

require 'twitter'



def fetch_tweets_from_user (handle)

  twitter = Twitter::REST::Client.new do |config|

    config.consumer_key        = ENV['TWITTER_CONSUMER_KEY']

    config.consumer_secret     = ENV['TWITTER_CONSUMER_SECRET']

    config.access_token        = ENV['TWITTER_ACCESS_TOKEN']

    config.access_token_secret = ENV['TWITTER_ACCESS_TOKEN_SECRET']

  end

  tweets = twitter.user_timeline(handle)

  tweets

end

Copilot
Replay
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

const token = process.env["TWITTER_BEARER_TOKEN"]



const fetchTweetsFromUser = (userName: string) => {

  const url = `https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=${userName}&count=20`

  return fetch(url, {

    headers: {

      "Authorization": `Bearer ${token}`

    }

  })

    .then(res => res.json())

    .then(tweets => tweets.map(tweet => ({

      id: tweet.id,

      text: tweet.text,

      created_at: tweet.created_at,

      user: {

        id: tweet.user.id,

        name: tweet.user.name,

        screen_name: tweet.user.screen_name,

        profile_image_url: tweet.user.profile_image_url

      }

    })))

}

Copilot
Replay
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

package main



var apiKey = os.Getenv("TWITTER_BEARER_TOKEN")

type Tweet = struct{ Text string }



func fetchTweetsFromUser(user string) ([]Tweet, error) {

    url := "https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=" + user + "&count=200"

    req, err := http.NewRequest("GET", url, nil)

    if err != nil {

        return nil, err

    }

    req.Header.Set("Authorization", "Bearer "+apiKey)

    resp, err := http.DefaultClient.Do(req)

    if err != nil {

        return nil, err

    }

    defer resp.Body.Close()

    if resp.StatusCode != 200 {

        return nil, fmt.Errorf("bad status: %d", resp.StatusCode)

    }

    var tweets []Tweet

    if err := json.NewDecoder(resp.Body).Decode(&tweets); err != nil {

        return nil, err

    }

    return tweets, nil

}

Copilot
Replay


AUTOMATE ANYTHING WITH GITHUB ACTIONS

Learn more about GitHub Actions
Set up CI/CD, enhance your DevOps, and script your entire workflow with GitHub
Actions. Kick off automated workflows with GitHub events like push, issue
creation, merge, and release.


11,000+
ACTIONS


WRITE YOUR OWN, OR IMPORT ACTIONS FROM THE OPEN SOURCE COMMUNITY, ALL WITHIN OUR
WORLD-CLASS EDITOR. FEELING STUCK? BROWSE THE ACTIONS DEVELOPER DOCS AS YOU
CODE.

Explore the Actions Marketplace



YOU CAN HAVE IT ALL. RUN ACTIONS IN ANY LANGUAGE OR OPERATING SYSTEM, ON LINUX,
MACOS, WINDOWS, ARM, AND CONTAINERS. OR ALL AT ONCE WITH MATRIX BUILDS.

 * 
 * 
 * 
 * 




WITH 70 MILLION JOBS RUN PER MONTH YOU’RE IN GOOD COMPANY WITH ACTIONS, THE
NUMBER ONE CI SERVICE ON THE WORLD’S LARGEST DEVELOPER PLATFORM.


SPEAKING OF AUTOMATION, DEPENDABOT KEEPS YOUR PROJECTS UP TO DATE WITH AUTOMATED
PULL REQUESTS THAT UPDATE ALL YOUR DEPENDENCIES. JUST REVIEW AND MERGE TO KEEP
YOUR SOFTWARE SECURE.

Learn more about Dependabot



FIND AND FIX VULNERABILITIES
BEFORE YOU MERGE

Learn more about advanced security


 * SECURE YOUR CODE AS YOU WRITE IT. CODEQL’S CODE SCANNING AUTOMATICALLY
   REVIEWS EVERY CHANGE TO YOUR CODEBASE AND IDENTIFIES KNOWN VULNERABILITIES
   BEFORE THEY EVER REACH PRODUCTION.
   
   
 * Vulnerabilities found
 * Fixed deserialized data security vulnerability


 * KEEP YOUR SECRETS. WE AUTOMATICALLY SCAN REPOSITORIES FOR OAUTH TOKENS, API
   KEYS, PERSONAL TOKENS, AND MORE. IF WE FIND ONE, WE’LL NOTIFY YOU AND THE
   PARTNER THAT ISSUED IT TO INVALIDATE THE SECRET.
   
   
 * OAuth token found
 * Replaced OAuth token with a key vault value




FOUND A VULNERABILITY? OUR SECURITY ADVISORY REMEDIATION TOOLS HELP DEVELOPERS
IDENTIFY AND DISCLOSE THEM RESPONSIBLY SO MAINTAINERS CAN PATCH THEM IN
DEDICATED, PRIVATE WORKSPACES.




THE HOME FOR ALL DEVELOPERS — INCLUDING YOU


 * GITHUB DISCUSSIONS IS DEDICATED SPACE FOR YOUR COMMUNITY TO COME TOGETHER,
   ASK AND ANSWER QUESTIONS, AND HAVE OPEN-ENDED CONVERSATIONS.
   
   Learn how to get started with Discussions
   


 * AMPLIFY YOUR VOICE IN YOUR OWN PERSONAL README ON YOUR PROFILE. TELL THE
   STORY OF YOUR WORK THROUGH YOUR REPOSITORIES, CONTRIBUTIONS, AND TECHNOLOGIES
   OF CHOICE.
   
   
 * sophshep started sponsoring you for $10/month 2x 3 days ago
 * joshaber started sponsoring you for $10/month 5x 2 days ago
 * pmarsceill started sponsoring you for $25/month 2 days ago


 * THAT OPEN SOURCE CODE YOU WROTE FOR YOURSELF MIGHT JUST HELP SOMEONE ELSE.
   GET PAID FOR BUILDING WHAT MATTERS TO YOU WITH GITHUB SPONSORS.
   
   SUPPORT THE PROJECTS YOU DEPEND ON, TOO.
   
   
   100% TO DEVELOPERS, ZERO FEES
   
   Learn more about Sponsors
   


MAKE YOUR CONTRIBUTION

Small experiments, inspired inventions, and the software everyone depends on—the
code you write on GitHub can reach one codebase or millions.

Sign up for GitHub Contact Sales

tensorflow/tensorflow

An Open Source Machine Learning Framework for Everyone

gatsbyjs/gatsby

Build blazing fast, modern apps and websites with React

home-assistant/core

🏡 Open source home automation that puts local control and privacy first

rust-lang/rust

Empowering everyone to build reliable and efficient software.

flutter/flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond.

kubernetes/kubernetes

Production-Grade Container Scheduling and Management

apple/swift

The Swift Programming Language

ansible/ansible

Ansible is a radically simple IT automation platform.

hashicorp/terraform

Terraform enables you to safely and predictably create, change, and improve
infrastructure.

ohmyzsh/ohmyzsh

🙃 A delightful community-driven framework for managing your zsh configuration.

facebook/react

A declarative, efficient, and flexible JavaScript library for building user
interfaces.

npm/cli

The package manager for JavaScript


PRODUCT

 * Features
 * Security
 * Team
 * Enterprise
 * Customer stories
 * The ReadME Project
 * Pricing
 * Resources
 * Roadmap


PLATFORM

 * Developer API
 * Partners
 * Electron
 * GitHub Desktop


SUPPORT

 * Docs
 * Community Forum
 * Professional Services
 * Skills
 * Status
 * Contact GitHub


COMPANY

 * About
 * Blog
 * Careers
 * Press
 * Inclusion
 * Social Impact
 * Shop

 * GitHub on Twitter
 * GitHub on Facebook
 * GitHub on LinkedIn
 * GitHub on YouTube
 * GitHub on Twitch
 * GitHub on TikTok
 * GitHub’s organization on GitHub

 * © 2022 GitHub, Inc.
 * Terms
 * Privacy (Updated 08/2022)
 * Site Map
 * What is Git?

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You
signed out in another tab or window. Reload to refresh your session.