Requirements: Good Comment System for Static Websites
Following up on previous previous post I am collecting here a requirements for good comment system for static websites, mainly blogs:
Non-functional requirements
- Simple installation. This is one of the main requirements, you can furthe split it by:
- Number of server components needed to run. Less is better.
- Integration into static website
- Things like domains, SSL, reverse-proxy, etc.
- Performance. One of the reason for popularity of static website generators is that they provide really high preformance, comment system should also be performant, which can be split in two factors:
- Size JavaScript components
- Latency in receiving comment list from server
- Complexity of HTML layout
- Easy administration. Comment system should not distract authors from creating contains, but still provide basic functionality you expect: editing, deleting, banning, moderation
- Security. It should not be possible to delete/edit/modify other people comments, also it should not be possible to spam or abuse comment system
- Visual appeal. It should be nice to use them.
Functional requirements
- Allow anonymous comments
- Multiple nesting level. There are different opinions out there is multi (2+) levels of nesting are good, but coment system should allow flexibility and pick some setting as a default
- Self-service functions - Users should be able to edit/delete their own comments withing certain time interval after positing it
- Ability to like/dislike comments to incentivise constructive discussion
- CAPTCHA/SPAM protection
- On-Demand loading. Comes from performance: if you have very actively discussed post, it does not make sense to load comments before user actually reached them in viewport
- Adaptive layout. You should be able to read comments from mobile phone
- Import from existing comment systems to drive adoption (disqus, isso, etc)
I think this is bare minimum for a useful comment system.