Welcome to the Flagit docs!
Flagit is comprised of a few key components:
A NextJS web app serving as the main user interface for viewing data collected by Flagit.
An API wrapper around Firebase, enabling access to the database by both the Dashboard and the Bot.
A set of Bot implementations that convert received messages into anonymous, cacheable data.
There is one implementation for each communication platform we support.
Flagit follows a uni-directional data flow model:
Bot → Query API → Dashboard
You can view the data flow chart here: 🔗 Flagit Data Flow (Lucidchart)
- Authentication Flow
- Chat Group Linking Flow
After setup, user actions are minimal:
- ✅ A Community Admin can flag a message
- 📊 User engagement metrics are collected automatically
In both cases, data flows automatically from Bot → Query API → Dashboard, where it can be queried as needed.
| Term | Description |
|---|---|
| Flagit User | A Community Manager with a Flagit Account |
| Flagit User ID | An identifier for a Flagit Account (email) |
| Flagit Community | A Community with one or more Managers and zero or more Groups |
| Flagit Community ID | A UUID identifying a Community |
| Group | A platform-specific group (e.g., Telegram Group, Discord Server) |
| Group ID | A UUID identifying a Group |
| Group Admin ID | A Platform User ID identifying a Group Administrator |
| Platform | A social messaging platform (e.g., Telegram, Discord) |
| Platform Type | Name of the platform as a string (e.g., "Telegram") |
| Platform User ID | Platform-specific user identifier (e.g., UUID for Telegram) |
Telegram, Telegram User ID, Telegram Channel, Telegram Group, etc. as opposed to Platform, Platform User ID