giscus
# [giscus][giscus] A comments system powered by [GitHub Discussions][discussions]. Let visitors leave comments and reactions on your website via GitHub! Heavily inspired by [utterances][utterances]. - [Open source][repo]. 🌏 - No tracking, no ads, always free. 📡 🚫 - No database needed. All data is stored in GitHub Discussions. :octocat: - Supports [custom themes][creating-custom-themes]! 🌗 - Supports [multiple languages][multiple-languages]. 🌐 - [Extensively configurable][advanced-usage]. 🔧 - Automatically fetches new comments and edits from GitHub. 🔃 - [Can be self-hosted][self-hosting]! 🤳 > **Note** > giscus is still under active development. GitHub is also still actively developing Discussions and its API. Thus, some features of giscus may break or change over time. ## How it works When giscus loads, the [GitHub Discussions search API][search-api] is used to find the Discussion associated with the page based on a chosen mapping (URL, `pathname`, `<title>`, etc.). If a matching discussion cannot be found, the giscus bot will automatically create a discussion the first time someone leaves a comment or reaction. To comment, visitors must authorize the [giscus app][giscus-app] to [post on their behalf][authorization] using the GitHub OAuth flow. Alternatively, visitors can comment on the GitHub Discussion directly. You can moderate the comments on GitHub. [giscus]: https://giscus.app [discussions]: https://docs.github.com/en/discussions [utterances]: https://github.com/utterance/utterances [repo]: https://github.com/giscus/giscus [advanced-usage]: https://github.com/giscus/giscus/blob/main/ADVANCED-USAGE.md [creating-custom-themes]: https://github.com/giscus/giscus/blob/main/ADVANCED-USAGE.md#data-theme [multiple-languages]: https://github.com/giscus/giscus/blob/main/CONTRIBUTING.md#adding-localizations [self-hosting]: https://github.com/giscus/giscus/blob/main/SELF-HOSTING.md [search-api]: https://docs.github.com/en/graphql/guides/using-the-graphql-api-for-discussions#search [giscus-app]: https://github.com/apps/giscus [authorization]: https://docs.github.com/en/developers/apps/identifying-and-authorizing-users-for-github-apps <!-- configuration --> If you're using giscus, consider [starring 🌟 giscus on GitHub][repo] and adding the [`giscus`][giscus-topic] topic [to your repository][topic-howto]! 🎉 ## Advanced usage You can add additional configurations (e.g. allowing specific origins) by following the [advanced usage guide][advanced-usage]. To use giscus with React, Vue, or Svelte, check out the [giscus component library][giscus-component]. ## Migrating If you've previously used other systems that utilize GitHub Issues (e.g. [utterances][utterances], [gitalk][gitalk]), you can [convert the existing issues into discussions][convert]. After the conversion, just make sure that the mapping between the discussion titles and the pages are correct, then giscus will automatically use the discussions. ## Sites using giscus - [laymonage.com][laymonage-website] - [os.phil-opp.com][os-phil-opp] - [Stats and R][statsandr] - [Tech Debt Burndown Podcast][techdebtburndown] - [**and many more!**][giscus-topic] ## Contributing See [CONTRIBUTING.md][contributing] [giscus-component]: https://github.com/giscus/giscus-component [repo]: https://github.com/giscus/giscus [giscus-topic]: https://github.com/topics/giscus [topic-howto]: https://docs.github.com/en/github/administering-a-repository/classifying-your-repository-with-topics [advanced-usage]: https://github.com/giscus/giscus/blob/main/ADVANCED-USAGE.md [utterances]: https://github.com/utterance/utterances [gitalk]: https://github.com/gitalk/gitalk [convert]: https://docs.github.com/en/discussions/managing-discussions-for-your-community/moderating-discussions#converting-an-issue-to-a-discussion [laymonage-website]: https://laymonage.com/posts/giscus [os-phil-opp]: https://os.phil-opp.com [statsandr]: https://statsandr.com [techdebtburndown]: https://techdebtburndown.com [contributing]: https://github.com/giscus/giscus/blob/main/CONTRIBUTING.md <!-- end --> --- This README is available in: - [‎العربية](README.ar.md) - [Беларуская](README.be.md) - [български](README.bg.md) - [Català](README.ca.md) - [Čeština](README.cs.md) - [Dansk](README.da.md) - [Deutsch](README.de.md) - [English](README.md) - [Esperanto](README.eo.md) - [Español](README.es.md) - [Euskera](README.eu.md) - [فارسی](README.fa.md) - [Français](README.fr.md) - [Ελληνικά](README.gr.md) - [Srpsko-Hrvatski (BCMS)](README.hbs.md) - [עברית](README.he.md) - [Magyar](README.hu.md) - [Indonesia](README.id.md) - [Italiano](README.it.md) - [日本語](README.ja.md) - [ភាសាខ្មែរ](README.kh.md) - [한국어](README.ko.md) - [Nederlands](README.nl.md) - [Polski](README.pl.md) - [Português](README.pt.md) - [Română](README.ro.md) - [Русский](README.ru.md) - [ภาษาไทย](README.th.md) - [Türkçe](README.tr.md) - [Tiếng Việt](README.vi.md) - [Українська](README.uk.md) - [O'zbek](README.uz.md) - [简体中文](README.zh-CN.md) - [繁體中文](README.zh-TW.md) - [香港繁體](README.zh-HK.md) [][vercel] [vercel]: https://vercel.com/?utm_source=giscus&utm_campaign=oss