Build a Forum with Redis as Database and AI Engine
Job to be done: Build a full-featured forum application using Redis as the primary database and AI engine for spam moderation and content recommendations.
🇳🇬 Ways to use this in Nigeria
Ideas to get you started, adapt to your situation.
- Student
Build a private forum for your study group to share notes, ask questions, and get AI-powered recommendations for related topics.
- Entrepreneur
Create a community forum for your app users to discuss features, report bugs, and get AI-suggested solutions to common problems.
- Small business
Set up a customer support forum for your online store where AI can help flag common complaints and suggest relevant product FAQs.
What you’ll get
A working community forum (a site where people post and reply) that runs an open-source project called CleanForum. The interesting twist: it uses Redis for everything, both as the database that stores the posts and as the AI engine that flags spam and suggests related posts, so you do not need a separate database and a separate AI service. This is an intermediate workflow: you will use a terminal and run a Python project, but you are running existing code, not writing it.
Tools you need
- Redis 8 (free): an “in-memory” data store (it keeps data in fast memory). Here it holds the forum’s data and powers the AI features. Free to run yourself.
- FastAPI (free): a Python toolkit for building web apps; it serves the forum.
- Python (free): the language the project is written in. You need version 3.8 or newer.
- SentenceTransformer (free): a Python library that turns text into “embeddings” (number-lists capturing meaning), which is how the forum spots spam and finds similar posts.
- Docker (free, optional): a tool that packages software so it runs the same everywhere; it can simplify getting Redis running.
Steps
-
Set up Python (and optionally Docker): make sure Python 3.8+ is installed (
python --versionto check). Install Docker too if you want the easy path to Redis. You should have Python ready in your terminal. -
Download the project: clone CleanForum from GitHub:
git clone https://github.com/premananda108/CleanForum.gitYou should see a new
CleanForumfolder. -
Open the project folder:
cd CleanForum -
Install the Python dependencies: this pulls in every library the project needs:
pip install -r requirements.txtYou should see a list of packages install successfully.
-
Start Redis with Vector Search: the AI features need Redis 8 running with its Vector Search ability enabled (Vector Search is what lets it compare meaning, not just exact words). The easiest route is the official Redis Docker image; the project README gives the exact command. Confirm Redis is running before the next step.
-
Run the forum: start the FastAPI server:
python main.pyYou should see it report that the server is running, usually at
http://127.0.0.1:8000. -
Open the forum: go to that address (for example
http://127.0.0.1:8000) in your browser. You should see the CleanForum homepage and be able to create posts. -
Try the AI features: post some spammy-looking text to see it flagged or blocked, and look at the “Similar Posts” suggestions on a post page. You should see spam caught and related posts recommended.
Original source
Based on prema_ananda’s CleanForum, submitted to the Redis AI Challenge and written up on the DEV Community blog, showing Redis 8 acting as both the database and the AI engine for a forum rather than just a cache.
Notes & variations
- Free-tier viability: Redis run locally, Python, FastAPI, and SentenceTransformer are all free. This costs nothing to build and try on your own machine.
- Common pitfall: starting the forum before Redis is running with Vector Search enabled. If spam detection or recommendations error out, that configuration is almost always why.
- Tip for better results: for sharper spam and recommendation results, try a different SentenceTransformer model, or fine-tune one on your own forum’s posts once you have some.