Skip to main content

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.