






















After 2 years running disqus on my blog, I have decided to switch over to gitment. The spam and slowness of Disqus is what drove me away from it. Plus no more ads for users.
Gitment is a small JS library that leverages on Github issues to store comments for each post:
Let’s get started.
You can use the hosted libraries:
<link rel="stylesheet" href="https://imsun.github.io/gitment/style/default.css">
<script src="https://imsun.github.io/gitment/dist/gitment.browser.js"></script>
or build them yourself
git clone git@github.com:imsun/gitment.git
cd gitment
npm install
npm build
Once you are sure that gitment.browser.js and default.css are present on your site, let’s move on to the setup.
First of all we are going to need an OAuth application.
Let’s add a new configuration object to store our client Id and Secret. In your theme’s _config.yml, add:
comments:
gitment:
clientId: 1808dbefdea3c185dd3b
clientSecret: 557be2aa0aa72bdffe0f22c683b7516166b0be28
We now need a <div> container to tell gitment where to display the comments:
This is how I did it: (note the id="gitment-comments")
<% if{ %>
<div id="gitment-comments"></div>
<% } %>
and we are now ready to initialize the gitment library:
<script>
const gitment = new Gitment({
id: '<%= page.title.replace(/[^\w\s]/gi, '').substring(0, 49) %>',
owner: 'your-github-id',
repo: 'your-repo-name',
oauth: {
client_id: '<%= theme.comments.gitment.clientId %>',
client_secret: '<%= theme.comments.gitment.clientSecret %>'
}
});
gitment.render(document.getElementById('gitment-comments'));
</script>
id should be a unique identifier for each post. Gitment will use it as the matching github issue name + will create one label with that id as well. Special character are not allowed and the max length is 50 chars. Make sure your use the regexp above to avoid issues down the line.<div id="gitment-comments"></div> has rendered, so make sure you place that script tag at the end of the <body> or at least after the div.ownerAt this point, deploy your blog and visit each page while logged in on github.
Click the Initialize comments link on each page to open a comment thread (aka create a github issue) for that particular post.
Results below ;)
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。