You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
stacosys/README.md

50 lines
2.7 KiB
Markdown

9 years ago
## Stacosys
Stacosys (aka STAtic blog COmment SYStem) is a fork of [Pecosys](http://github.com/kianby/pecosys) trying to fix Pecosys design drawbacks and to provide an alternative to hosting services like Disqus. Stacosys protects your readers's privacy.
Stacosys works with any static blog or even a simple HTML page. It privilegiates e-mails to communicate with the blog administrator. It doesn't sound *hype* but I'm an old-school guy ;-) E-mail is reliable and an
6 years ago
universal way to discuss. You can answer from any device using an e-mail client.
9 years ago
### Features overview
Stacosys main feature is comment management.
Here is the workflow:
- Readers submit comments via a comment form embedded in blog pages
- Blog administrator receives an email notification from Stacosys when a
comment is submitted
- Blog administrator can approve or drop the comment by replying to e-mail
- Stacosys stores approved comment in its database.
Stacosys is localized (english and french).
### Technically speaking, how does it work?
6 years ago
Stacosys can be hosted on the same server or on a different server than the blog. Stacosys offers a REST API to retrieve and post comments. Static blog is HTML-based and a piece of JavaScript code interacts with Stacosys using HTTP requests. Each page has a unique id and a simple request allows to retrieve comments for a given page. Similarly a POST request allows to send a comment from reader browser to Stacosy server. The comment post is relayed to the administrator by e-mail. for this purpose a dedicated email is assigned to Stacosys to communicate with blog administrator and blog subscribers.
9 years ago
### FAQ
*How do you block spammers?*
6 years ago
- Current comment form is basic: no captcha support but a honey pot. Second defense barrier: admin can tag comment as SPAM and, for example, link stacosys log to fail2ban tool.
9 years ago
*Which database is used?*
- Thanks to Peewee ORM a wide range of databases is supported. I personnaly uses SQLite.
*Which technologies are used?*
- [Python](https://www.python.org)
- [Flask](http://flask.pocoo.org)
- [Peewee ORM](http://docs.peewee-orm.com)
- [Markdown](http://daringfireball.net/projects/markdown)
6 years ago
### Installation
Python 3.7
6 years ago
pip libs: flask peewee pyrss2gen markdown clize flask-apscheduler profig requests
6 years ago
9 years ago
### Ways of improvement
6 years ago
Current version of Stacosys fits my needs and it serves comments on [my blog](https://blogduyax.madyanne.fr). However Stacosys has been designed to serve several blogs and e-mail can be a constraint for some people. So an area of improvement would be to add an administration UI to configure sites, approve or reject comments, keep track of usage statistics and get rid of e-mails. I encourage you to fork the project and create such improvements if you need them.