retoor 768477df2a feat: add merge_images script, dataset module, and rename dr.rant_stats_all to dr.stats_all
Add new merge_images.py script that compiles all exported PNG graphs into a single composite image with 2-column layout and 480x320 per-image sizing. Introduce drstats/dataset.py with dump() function that outputs per-user contribution statistics and all rants/posts for LLM embedding. Rename the console script entry point from dr.rant_stats_all to dr.stats_all across setup.cfg, entry_points.txt, README.md, and PKG-INFO. Update Makefile to replace sync with sync_excempt target, add merge_images target, and add prerequisite reminders for export targets. Refactor db.py view creation queries to use compact string formatting. Redirect Duration class timing output and dataset.py printr calls to stderr.
2024-11-23 18:56:52 +00:00

dRStats

About

Simple project to determine health of the devrant platform. Also, it will generate a dataset to be used with machine learning. Make Retoor9b great again!

Credits

Thanks to Rohan Burke (coolq). The creator of the dr api wrapper this project uses. Since it isn't made like a package, i had to copy his source files to my source folder. His library: https://github.com/coolq1000/devrant-python-api/

Using this project

Prepare environment

Create python3 environment:

python3 -m venv ./venv

Activate python3 environment:

source ./venv/bin/activate

Make

You don't have to use more than make. If you just run make all statistics will be generated. It will execute the right apps for generating statistics.

Applications

If you type dr. in terminal and press tab you'll see all available apps auto completed. These applications are also used by make.

1. `dr.sync` synchronizes all data from last two weeks from devrant. Only two weeks because it's rate limited.
2. `dr.dataset` exports all data to be used for LLM embedding., don't forget to execute `dr.sync` first.
3. `dr.stats_all` exports all graphs to export folder, don't forget to execute `dr.sync` first.
4. `dr.rant_stats_per_day` exports graphs to export folder. don't forget to execute `dr.sync` first.
5. `dr.rant_stats_per_hour` exports graphs to export folder. don't forget to execute `dr.sync` first.
6. `dr.rant_stats_per_weekday` exports graphs to export folder. don't forget to execute `dr.sync` first.
S
Description
Project for generating detailed statistics in both text and graphs. Also it generates a dataset for use in LLM embedding (chromadb for example).
Readme
865 MiB
Languages
Python 95.8%
Makefile 4.2%