Django 4.2 / 5.0 / 5.1 / 5.2

Comments & Live Chat for Django

Drop-in template tags for threaded comments, real-time live chat, and comment counts. Secure SSO signed from your Django auth users, full REST access through the Python SDK, and zero frontend build steps.

Eleven Template Tags, Zero Complexity

Load the tag library once, set your tenant ID, and embed any widget with a single tag. Comments, live chat, comment counts, collaborative and image chat, recent activity feeds, reviews, top pages, and user activity included.

Threaded Comments

Add a full-featured threaded comment widget to any page. Replies, @mentions, voting, rich text, and real-time updates work out of the box.

{% load fastcomments %}
{% fastcomments url_id=post.slug url=post.get_absolute_url %}

Live Chat

Embed a real-time chat room for any page or resource. Built for live events, support channels, and community hubs with online presence indicators.

{% fastcomments_live_chat url_id=channel.slug %}

Comment Count

Show the comment count for any page inline. Great for article listings, dashboards, and navigation badges. Use the bulk loader to fill every count on a listing page in one request.

Comments: {% fastcomments_comment_count url_id=post.slug number_only=True %}

One Package, Everything You Need

FastComments brings a full suite of features to your Django application.

Django + FastComments
Live Comments
Live Chat
SSO Integration
Spam Protection
Notifications
@Mentions
Code & Markdown
Moderation Tools
Analytics
GDPR Compliance
14+ Languages
Webhooks & API
Django + FastComments
Live Comments
Live Chat
SSO Integration
Spam Protection
Notifications
@Mentions
Code & Markdown
Moderation Tools
Analytics
GDPR Compliance
14+ Languages
Webhooks & API

Flexible SSO Options

Choose the authentication mode that fits your application's needs.

Simple SSO

Client-side SSO for quick setup without server signing.

  • No API secret required
  • Username & email mapping
  • Automatic login

No SSO

Let users create their own FastComments accounts independently.

  • Zero configuration
  • Email-based accounts
  • Optional anonymous commenting

Up and Running in Minutes

Three steps to live comments in your Django app.

1

Install with pip

Install the package from GitHub with pip. Add the api extra when you want server-side REST access.

bash
$pip install "git+https://github.com/fastcomments/fastcomments-django.git@v0.1.0"
2

Add the App & API Key

Add "fastcomments_django" to INSTALLED_APPS, then set the FASTCOMMENTS dict with your TENANT_ID and API_KEY.

settings.py
INSTALLED_APPS = [
    # ...
    "fastcomments_django",
]

FASTCOMMENTS = {
    "TENANT_ID": "your-tenant-id",
    "API_KEY": "your-api-key",
}
3

Drop In Template Tags

Load the tag library in any template, then drop in the comments widget wherever you want the thread.

templates/post_detail.html
{% load fastcomments %}

{% fastcomments url_id=post.slug %}

Frequently Asked Questions

We've compiled answers to some of the most common questions to help you get started.

Is there a free trial?

plus-icon

Yes. FastComments offers a 30-day free trial with full access to all features, including SSO, live chat, and the rich text editor. No credit card required to start.

How does SSO work with Django auth?

plus-icon

When Secure SSO is enabled, the package reads the authenticated user from the request and signs an HMAC-SHA256 token on the server. This creates or updates the user's FastComments account with their name, email, and avatar, so users are signed in without extra registration. Map fields with USER_MAP, a to_fastcomments_user_data() method on your user model, or a global USER_MAPPER. Choose the SSO id deliberately: it is the permanent handle for a user's comment history, so map it to a stable, opaque value like a UUID rather than a sequential primary key.

Which Django and Python versions are supported?

plus-icon

The FastComments Django package supports Django 4.2, 5.0, 5.1, and 5.2, and requires Python 3.10 or higher. It installs as a standard Django app with a single entry in INSTALLED_APPS.

Is FastComments GDPR compliant?

plus-icon

Yes. FastComments is fully GDPR compliant with an optional EU-based CDN that keeps all data within Europe. Set REGION to "eu" in the FASTCOMMENTS settings and the package routes widgets and API calls to the EU region. We support data export requests, right-to-deletion, and provide a Data Processing Agreement (DPA) on request.

Can I customize the widget markup?

plus-icon

Yes. Override the fastcomments/widget.html template by placing your own copy earlier on the template search path. Every tag also accepts standard FastComments configuration options as keyword arguments, giving you full control over appearance and behavior without editing the package.

Can I access the FastComments API from Django?

plus-icon

Yes. Install the api extra and the package exposes the FastComments Python SDK: admin() for authenticated calls, public_api() for public calls, and get_manager() for signing SSO tokens. Use them to create, update, or delete comments, manage users, fetch analytics, and more from your views or background jobs.

Ready to Add Comments to Your Django App?

Install the package, load the tag library, drop in a template tag, and go live in minutes.