<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <title>About OctoCounts | GitHub SLOC Counter</title>
    <meta name="description" content="About OctoCounts: a free source lines of code counter for public GitHub repositories, built by huanglizhuo. Open source, MIT licensed." />
    <meta name="robots" content="index,follow,max-image-preview:large,max-snippet:-1" />
    <link rel="canonical" href="https://octocounts.com/about" />
    <link rel="alternate" type="text/markdown" href="https://octocounts.com/about.md" />
    <meta property="og:type" content="article" />
    <meta property="og:site_name" content="OctoCounts" />
    <meta property="og:title" content="About OctoCounts" />
    <meta property="og:description" content="OctoCounts is a free source lines of code counter for public GitHub repositories. Built by huanglizhuo and open source under the MIT license." />
    <meta property="og:url" content="https://octocounts.com/about" />
    <meta property="og:image" content="https://octocounts.com/og-image.jpg" />
    <meta name="twitter:card" content="summary_large_image" />
    <meta name="twitter:title" content="About OctoCounts" />
    <meta name="twitter:description" content="About OctoCounts: free SLOC counter for public GitHub repositories, built by huanglizhuo." />
    <meta name="twitter:image" content="https://octocounts.com/og-image.jpg" />
    <style>
      :root { color-scheme: light dark; }
      * { box-sizing: border-box; }
      body { max-width: 920px; margin: 40px auto; padding: 0 20px 56px; font: 16px/1.65 ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #1f2328; background: #ffffff; overflow-x: hidden; }
      nav, .meta, .note { color: #57606a; }
      h1, h2, h3 { line-height: 1.2; color: #111827; }
      h1 { font-size: clamp(2rem, 5vw, 3.25rem); letter-spacing: 0; margin: 0 0 16px; }
      h2 { font-size: 1.45rem; margin: 36px 0 12px; }
      h3 { font-size: 1.05rem; margin: 24px 0 8px; }
      a { color: #0969da; }
      code, pre { background: #f6f8fa; border: 1px solid #d0d7de; border-radius: 6px; }
      code { padding: 1px 5px; overflow-wrap: anywhere; }
      pre { max-width: 100%; padding: 14px; overflow: auto; }
      pre code { overflow-wrap: normal; }
      table { width: 100%; max-width: 100%; border-collapse: collapse; margin: 18px 0; display: block; overflow-x: auto; }
      th, td { border: 1px solid #d0d7de; padding: 10px; text-align: left; vertical-align: top; }
      th { background: #f6f8fa; }
      .note { border-left: 4px solid #1a7f37; padding: 12px 14px; background: #f6f8fa; }
      @media (prefers-color-scheme: dark) {
        body { color: #e6edf3; background: #0d1117; }
        h1, h2, h3 { color: #f0f6fc; }
        nav, .meta, .note { color: #8b949e; }
        code, pre, th, .note { background: #161b22; border-color: #30363d; }
        td, th { border-color: #30363d; }
        a { color: #58a6ff; }
      }
    </style>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "AboutPage",
      "name": "About OctoCounts",
      "description": "About OctoCounts, a free source lines of code counter for public GitHub repositories.",
      "url": "https://octocounts.com/about",
      "datePublished": "2026-08-29",
      "dateModified": "2026-09-30",
      "mainEntity": {
        "@type": "Organization",
        "@id": "https://octocounts.com/#organization",
        "name": "OctoCounts",
        "url": "https://octocounts.com/",
        "logo": "https://octocounts.com/favicons/web-app-manifest-512x512.png",
        "sameAs": [
          "https://github.com/huanglizhuo/OctoCounts",
          "https://chromewebstore.google.com/detail/octocounts-%E2%80%94-github-sloc/gkgjpjdnaklagijmekoolhcpebmoldbj",
          "https://microsoftedge.microsoft.com/addons/detail/octocounts-%E2%80%93-github-sloc-/ehifednhpbpekkadndaipnngopbhpoim",
          "https://addons.mozilla.org/en-US/firefox/addon/octocounts-github-sloc/"
        ]
      }
    }
    </script>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Person",
      "@id": "https://github.com/huanglizhuo",
      "name": "huanglizhuo",
      "url": "https://github.com/huanglizhuo",
      "sameAs": [
        "https://github.com/huanglizhuo",
        "https://github.com/huanglizhuo/OctoCounts",
        "https://chromewebstore.google.com/detail/octocounts-%E2%80%94-github-sloc/gkgjpjdnaklagijmekoolhcpebmoldbj",
        "https://microsoftedge.microsoft.com/addons/detail/octocounts-%E2%80%93-github-sloc-/ehifednhpbpekkadndaipnngopbhpoim",
        "https://addons.mozilla.org/en-US/firefox/addon/octocounts-github-sloc/",
        "https://www.npmjs.com/package/octocounts"
      ],
      "knowsAbout": ["source lines of code", "code metrics", "tokei", "developer tools", "Rust", "TypeScript"],
      "jobTitle": "Software Developer",
      "image": "https://octocounts.com/og-image.jpg"
    }
    </script>
  </head>
  <body>
    <nav><a href="/">OctoCounts</a> / About</nav>
    <main>
      <p class="meta">Updated September 16, 2026 &middot; Maintained by <a href="https://github.com/huanglizhuo">huanglizhuo</a></p>
      <h1>About OctoCounts</h1>
      <p class="note">OctoCounts is a free source lines of code (SLOC) counter for public GitHub repositories. It shows files, total lines, code, comments, blanks, and per-language totals without cloning.</p>

      <h2>Why I built this</h2>
      <p>I kept wanting to know how big a repository actually was before depending on it, forking it, or spending an afternoon reading it — and GitHub's language bar never answered that; it shows percentages, not files or lines. Cloning a repo just to run tokei locally worked, but I was doing it often enough, especially for repos with a long git history, that it got old.</p>
      <p>So I built OctoCounts to skip the clone: paste a GitHub URL, get the real numbers. I still use it myself, mostly to size up a dependency before adopting it, or to settle "how big is this thing, really" with an actual count instead of a guess.</p>

      <h2>What OctoCounts does</h2>
      <p>GitHub shows language percentages in the repository sidebar, but it does not show actual file counts or line counts. OctoCounts fills that gap by:</p>
      <ul>
        <li>Downloading a source archive for a pinned commit instead of cloning full git history.</li>
        <li>Counting every source file with <a href="https://github.com/XAMPPRocky/tokei">tokei</a>.</li>
        <li>Reporting files, total lines, code lines, comment lines, blank lines, and per-language totals.</li>
        <li>Caching reports by commit SHA so repeated analyses are instant.</li>
        <li>Offering stable report URLs, README badges, PNG cards, JSON export, an API, a CLI, a GitHub Action, and browser extensions.</li>
      </ul>

      <h2>Open source</h2>
      <p>OctoCounts is open source under the MIT license. The source code, issue tracker, and contribution guidelines live on GitHub:</p>
      <p><a href="https://github.com/huanglizhuo/OctoCounts">github.com/huanglizhuo/OctoCounts</a></p>

      <h2>Maintainer</h2>
      <p>OctoCounts is built and maintained by <a href="https://github.com/huanglizhuo">huanglizhuo</a>.</p>

      <h2>Contact</h2>
      <p>For bug reports, feature requests, or questions, please open an issue on <a href="https://github.com/huanglizhuo/OctoCounts/issues">GitHub Issues</a>.</p>

      <h2>Related pages</h2>
      <ul>
        <li><a href="/docs/github-sloc-counter">GitHub SLOC counter guide</a></li>
        <li><a href="/docs/methodology">Counting methodology</a></li>
        <li><a href="/docs/api">API docs</a></li>
        <li><a href="/docs/faq">FAQ</a></li>
        <li><a href="/privacy">Privacy</a></li>
      </ul>
    </main>
  <!-- Cloudflare Pages Analytics --><script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "71af94b0ca2c4711a817b0cb99d9eb5b"}'></script><!-- Cloudflare Pages Analytics --></body>
</html>
