Automatic collection and historical analysis of your DEV.to metrics
"Without historical data, you only see snapshots. With historical data, you see trends."
- Automatically collect all your DEV.to metrics
- Store historical snapshots for long-term analysis
- Deep-dive into engagement (comments, followers, etc.)
- Never lose data again β the core idea behind the project
devto-metrics-tracker/
βββ devto_tracker.py # Main collection script
βββ comment_analyzer.py # Deep comment analysis
βββ setup_automation.sh # Automatic cron setup
βββ advanced_analytics.py # Advanced metrics analysis
βββ anrety.py # Article analysis tool
βββ checkcoverage.py # Coverage verification
βββ checkincremental.py # Incremental data checks
βββ cleanup_articles.py # Cleanup of removed articles
βββ cli_to_svg.py # CLI-to-SVG converter
βββ dashboard.py # Metrics dashboard
βββ diagnose.py # Metrics diagnostics
βββ fix.py # Error correction script
βββ list_articles.py # List collected articles
βββ nlp_analyzer.py # NLP analysis on comments
βββ quality_analytics.py # Article quality analysis
βββ quick_check.py # Quick metrics validation
βββ traffic_analytics.py # Traffic insights
pip install requests python-dotenvCreate a .env file in the project root:
# Copy the example file
cp .env.example .env
# Edit .env and add your API key
DEVTO_API_KEY=your_actual_api_key_here
GEMINI_API_KEY=your_gemini_key_here # OptionalGet your DEV.to API key from: https://dev.to/settings/extensions
# Initialize database
python3 devto_tracker.py --init
# Collect your first snapshot
python3 devto_tracker.py --collectNote: API keys are now loaded from .env file automatically. No need to pass them via command line!
export DEVTO_API_KEY='your-api-key'
chmod +x setup_automation.sh
./setup_automation.shThis will:
- Initialize the database
- Perform a test snapshot
- Create a cron wrapper
- Suggest different collection frequencies
Daily overview of all metrics.
| Column | Description |
|---|---|
collected_at |
Timestamp |
total_articles |
Total number of articles |
total_views |
Total views |
total_reactions |
Total reactions |
total_comments |
Total comments |
follower_count |
Total followers |
Per-article metrics at each collection.
| Column | Description |
|---|---|
collected_at |
Timestamp |
article_id |
Article ID |
title |
Title |
views |
Views |
reactions |
Reactions |
comments |
Comments |
tags |
JSON array |
| Column | Description |
|---|---|
collected_at |
Timestamp |
follower_count |
Count |
new_followers_since_last |
Increment |
| Column | Description |
|---|---|
comment_id |
Comment ID |
article_id |
Article |
created_at |
Timestamp |
author_username |
Author |
body_html |
HTML content |
body_length |
Length |
python3 devto_tracker.py --api-key YOUR_KEY --collect
python3 devto_tracker.py --api-key YOUR_KEY --analyze-growth 30
python3 devto_tracker.py --api-key YOUR_KEY --analyze-article 123456python3 comment_analyzer.py --article 123456
python3 comment_analyzer.py --compare
python3 comment_analyzer.py --engaged-readers
python3 comment_analyzer.py --timing
python3 comment_analyzer.py --full-report- How many views did I gain per day this week?
- Which article has the best velocity (views/day)?
- When did I gain the most followers?
- Who are my most loyal readers?
- How fast do comments arrive after publication?
- Which articles spark the most conversation?
- What's the average comment length?
- Which article brought me the most followers?
- Is there a link between comment count and follower growth?
- Do long articles generate more engagement?
- Early Stage (0β1000 followers): 2Γ/day
- Growth (1000β5000 followers): 4Γ/day
- Established (5000+ followers): 6Γ/day
- Hour-by-hour growth curve
- Spike detection
- Correlating DEV.to staff comments
- Long-tail behavior
Daily follower increments and stabilization patterns.
Deep qualitative and quantitative insights.
Backup, DB size checks, cleanup, VACUUM, and more.
Includes:
- 7-day article growth
- Best days of the week
- Comment velocity
Database lock issues, rate-limit handling, missing data logs, etc.
- Web dashboard
- CSV export
- Email alerts
- Multi-API integration
- Sentiment analysis
- Performance prediction
- DEV.to does not provide historical metrics
- Respect API limits
- Keep your DB private
Fork β Branch β Commit β PR.
MIT License.
This project was inspired in part by the work of the DEV.to community, especially:
devto-analytics-pro (by GnomeMan4201) β a solid foundation for visualizing DEV.to metrics and understanding overall activity.
devto-bot-audit (by GnomeMan4201) β a clever tool for identifying suspicious follower patterns and highlighting potential bot activity.
These tools helped shape the early direction of this tracker. However, this project goes further by focusing on historical data, automated collection, deep analytics, and a design closer to an ETL pipeline mixed with a lightweight CRM.
It aims to complement the existing ecosystem rather than replace it.
Still in progress. Check TODO.md for the roadmap toward the Community version.