whatisgithub

What is automoderate?

significant-gravitas/automoderate — explained in plain English

Analysis updated 2026-05-18

6PythonAudience · developerComplexity · 3/5LicenseSetup · moderate

In one sentence

A self-hosted platform that automatically checks user-submitted text with keyword rules and OpenAI, then approves, rejects, or flags it for human review.

Mindmap

mindmap
  root((AutoModerate))
    What it does
      Content moderation
      Approve reject or flag
      Human review queue
    Tech stack
      Flask
      SQLAlchemy
      OpenAI API
      WebSockets
    Use cases
      Comment moderation
      Multi tenant projects
      REST API integration
    Audience
      Backend developers
      Product teams
      Platform operators

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add automated comment or message moderation to an existing app via its REST API.

USE CASE 2

Run a multi-tenant moderation service for several projects or clients from one deployment.

USE CASE 3

Combine fast keyword rules with AI review to catch obvious and subtle policy violations.

USE CASE 4

Route low-confidence moderation decisions to a human review queue instead of guessing.

What is it built with?

PythonFlaskSQLAlchemyOpenAI APIWebSocketsPostgreSQLSQLiteDocker

How does it compare?

significant-gravitas/automoderateashishdevasia/ha-proton-drive-backupbenchflow-ai/skillsbench-trajectories
Stars666
LanguagePythonPythonPython
Last pushed2026-06-14
MaintenanceMaintained
Setup difficultymoderatemoderateeasy
Complexity3/52/51/5
Audiencedeveloperops devopsresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires a paid OpenAI API key for AI-based moderation to work.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

So what is it?

AutoModerate is a web application for reviewing and filtering user-submitted content automatically. It is aimed at teams or products that need to decide whether text (such as comments, posts, or messages) should be approved, rejected, or held for a human to look at, without manually reading every submission. The platform is organized around projects. Each project can have its own team members, its own set of rules, and its own API keys for outside applications to connect to. When an application sends content to AutoModerate through the API, the system runs it through a series of checks in priority order. Simple keyword or pattern-based rules are checked first because they are fast. If those do not produce a clear answer, the content is sent to an AI model (OpenAI's GPT) to analyze it according to a custom prompt. The first rule that matches determines the final decision: approve, reject, or flag. Results with low confidence are automatically set aside for a human reviewer to examine. Results appear in the web interface in real time, meaning reviewers do not need to refresh the page to see new decisions come in. The interface also includes dashboards with statistics, a queue for manual review, and pages for managing team members and API keys. The application is built with Flask, a Python web framework. It uses a database to store content and decisions, supports SQLite for local development and PostgreSQL for production deployments, and includes Docker configuration to make deployment straightforward. It caches AI responses so repeated submissions of the same content do not trigger a new API call each time. The README is thorough and covers installation, configuration options, API usage examples, database structure, performance characteristics, and deployment guidance.

Copy-paste prompts

Prompt 1
Walk me through setting up AutoModerate locally with an OpenAI API key and SQLite.
Prompt 2
Show me how to submit content to AutoModerate's REST API for moderation from my app.
Prompt 3
Explain how AutoModerate's rule priority and early-exit logic decide approve versus reject versus flag.
Prompt 4
Help me configure a custom AI moderation rule with my own prompt in AutoModerate.

Frequently asked questions

What is automoderate?

A self-hosted platform that automatically checks user-submitted text with keyword rules and OpenAI, then approves, rejects, or flags it for human review.

What language is automoderate written in?

Mainly Python. The stack also includes Python, Flask, SQLAlchemy.

What license does automoderate use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is automoderate to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is automoderate for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.