Introduction
Chatfall is a self-hosted, light-weight commenting system for easily adding comments to any webpage.
It is built using Bun, ElysiaJS, React and PostgreSQL and has a whole host of features, including:
- Easily embeddable into any webpage.
- Fully customizable styling, including dark theme support.
- Threaded comment view with unlimited depth.
- Mobile-friendly responsive interface.
- Easy deployment - server-side backend executable is a single binary with no dependencies.
- Quick and simple registration by email.
- Reply to and like any comment at any depth.
- Sort comments by: newest/oldest, most/least replied-to, most/least liked.
- Real-time in-page notifications of new comments (uses Websockets).
- Comprehensive administration features:
- Set the minimum amount of time a user must wait before posting again.
- Ban by email and/or email domain.
- Delete unwanted comments.
- Mark all comments as requiring moderation.
- Approve/deny comments marked as requiring moderation.
- Set banned words - users will not be able to create comments containing these words.
Chatfall comes as a full-stack solution, with both a server-side and client-side component:
- Server-side:
- Responsible for reading/writing comments from/to your database, authenticating users, sending emails, etc.
- Distributed as single binary executable on the Github releases page.
- Client-side:
- To be embedded into webpages where comments are needed. Designed to load and render quickly.
- Distributed as a JS and companion CSS file available on the Github releases page but also via the @chatfall/client NPM package.
The best way to discover what Chatfall has to offer is to follow the instructions in the Tutorial to get it up and running locally.