Skip to content

CheckFirstHQ/X-Community-Notes-Dashboard

Repository files navigation

Community Notes Dashboard

The Community Notes Dashboard is an interactive web application built with Dash and Plotly that allows users to explore and analyse Community Notes data from X (formerly Twitter). Developed by CheckFirst, the dashboard offers a wide range of visualisations and interactive features that help you understand note distribution, fact-checking usage, content trends, and more.

Demo

A live version of the the Community Notes Dashboard is available online

Features

  • Global Distribution: Visualises the volume and spread of Community Notes across multiple languages over the last 30 days
  • Fact-Checking Usage: Displays statistics and charts on notes that include external fact-checking links
  • Search: Search for keywords within note summaries and see detailed results with links to the original tweets
  • Sources & Domains: Shows the top domains referenced in the notes, distinguishing between media-based and tweet-based sources
  • Author & Participant Analysis: Provides insights on unique authors and the distribution of notes per participant
  • Note Visibility & Responsiveness: Compares the total number of notes versus displayed notes, and tracks how quickly notes are displayed
  • Ratio Displayed: Displays the ratio of notes that are ultimately surfaced to users, based on preprocessed data
  • Interactive Filters: Filter visualisations by language and timeframe

Project Structure

├── app.py                   # Main Dash application script
├── community.py             # Helper functions (e.g., date parsing, domain extraction)
├── data/
│   ├── fc_stats.json        # Fact-checking statistics JSON file
│   ├── note_display_analysis.csv  # Preprocessed CSV file for display analysis
│   └── notes_processed.parquet    # Main dataset in Parquet format
├── archive_processed/       # Directory containing historical CSV files
├── tmp/
│   └── combined_analysis.json  # Precomputed content analysis data
├── assets/
│   └── cn.png               # Community Notes logo and additional assets (e.g., CSS)
└── README.md                # This file

Installation

  1. Clone the Repository
git clone https://github.com/CheckFirstHQ/X-Community-Notes-Dashboard.git
cd community-notes-dashboard
  1. Create a Virtual Environment (Optional but Recommended)
python -m venv venv
source venv/bin/activate  # On Windows, use: venv\Scripts\activate
  1. Install Dependencies

Ensure you have Python 3.7 or later installed. Then install the required packages:

pip install -r requirements.txt

Data Preparation

Before running the dashboard, make sure the necessary data files are in place:

python3 preprocess.py
python3 archive_summurize.py
python3 find_fc_usage.py

Usage

  1. Run the Dashboard

Start the Dash server by executing:

python app.py
  1. Access the Dashboard

Open your web browser and navigate to http://localhost:8050 (or the host and port specified in app.py).

  1. Interact with the Dashboard
  • Use the sidebar to navigate between sections.
  • Apply filters by selecting languages and adjusting the date range.
  • Search for keywords in note summaries and view corresponding results.
  • Explore various interactive graphs and tables that update based on your selections.

Contact

For questions, feedback, or further information, please contact the CheckFirst team or visit CheckFirst Network.

About

Explore and analyze Community Notes data from X

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published