Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/teekay/jcomments
A headless commenting platform for publishers. Usable with any CMS that is capable of custom integrations using REST APIs. Suitable for integration with statically built websites (JAM stack).
https://github.com/teekay/jcomments
comment-system jamstack static-site-generator
Last synced: 3 days ago
JSON representation
A headless commenting platform for publishers. Usable with any CMS that is capable of custom integrations using REST APIs. Suitable for integration with statically built websites (JAM stack).
- Host: GitHub
- URL: https://github.com/teekay/jcomments
- Owner: teekay
- License: mit
- Created: 2021-05-24T13:20:23.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-11-05T15:02:11.000Z (9 days ago)
- Last Synced: 2024-11-05T15:19:43.286Z (9 days ago)
- Topics: comment-system, jamstack, static-site-generator
- Language: TypeScript
- Homepage:
- Size: 4.07 MB
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A commenting platform for self-hosted static websites. Currently, it integrates with Eleventy, the static site generator, using the [first-party](https://github.com/teekay/eleventy-plugin-jcomments)[ plugin](https://github.com/teekay/eleventy-plugin-jcomments).
## Why use it
There are a few commenting platforms you can use on a static website like Commento or Disqus. Typically, you'll embed a JavaScript file in your HTML files, and the browser fetches the comments dynamically as the web page loads.
This app takes a different approach, motivated by a desire to "own your data."
It encourages the publisher to make an API call during website build to fetch existing comments such that they can be embedded in the final HTML.
The browser can still request comments made after the last build.
Using this technique, the publisher has protection against outages, network interruptions, etc. The website visitor sees the comments sooner.
## When to use it
The app is for publishers of websites with a small or moderate number of comments per day.
The feature set is rudimentary. There are no threads, voting, emojis, replies, etc.
If you supply your own Akismet API key, the app will watch out for comment SPAM and put suspicious comments on an approval queue. You can review, approve, or delete all comments using the web dashboard.
The app can also notify you about new comments via e-mail.
That's it! If you need more, you can raise an issue.
## Hosting
You can self-host the app anywhere. You need Node.js (v14 and up) and PostgreSQL. For e-mail notifications, you need a Mailgun API key.
You can also host this in Azure. Have a look at the [docs](./AZURE.md).
## Tech stack
The prototype is built with Typescript using the NestJS framework and PostgreSQL for data storage. Spam detection is delegated to Akismet (optional but recommended).