backlog-digest 1.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- backlog_digest-1.0.0/.gitignore +17 -0
- backlog_digest-1.0.0/CHANGELOG.md +36 -0
- backlog_digest-1.0.0/LICENSE +21 -0
- backlog_digest-1.0.0/PKG-INFO +200 -0
- backlog_digest-1.0.0/README.md +159 -0
- backlog_digest-1.0.0/README.uk.md +217 -0
- backlog_digest-1.0.0/docs/FAQ.md +105 -0
- backlog_digest-1.0.0/docs/FAQ.uk.md +104 -0
- backlog_digest-1.0.0/docs/development.md +65 -0
- backlog_digest-1.0.0/docs/examples/video-summary.en.md +52 -0
- backlog_digest-1.0.0/docs/examples/video-summary.uk.md +52 -0
- backlog_digest-1.0.0/docs//320/242/320/227.md +186 -0
- backlog_digest-1.0.0/pyproject.toml +91 -0
- backlog_digest-1.0.0/src/backlog_digest/__init__.py +4 -0
- backlog_digest-1.0.0/src/backlog_digest/__main__.py +3 -0
- backlog_digest-1.0.0/src/backlog_digest/autostart.py +201 -0
- backlog_digest-1.0.0/src/backlog_digest/cli.py +256 -0
- backlog_digest-1.0.0/src/backlog_digest/config.py +179 -0
- backlog_digest-1.0.0/src/backlog_digest/db.py +532 -0
- backlog_digest-1.0.0/src/backlog_digest/doctor.py +210 -0
- backlog_digest-1.0.0/src/backlog_digest/export.py +205 -0
- backlog_digest-1.0.0/src/backlog_digest/folders.py +47 -0
- backlog_digest-1.0.0/src/backlog_digest/i18n.py +160 -0
- backlog_digest-1.0.0/src/backlog_digest/keys.py +82 -0
- backlog_digest-1.0.0/src/backlog_digest/library.py +362 -0
- backlog_digest-1.0.0/src/backlog_digest/llm.py +297 -0
- backlog_digest-1.0.0/src/backlog_digest/locales/en.toml +532 -0
- backlog_digest-1.0.0/src/backlog_digest/locales/es.toml +532 -0
- backlog_digest-1.0.0/src/backlog_digest/locales/fr.toml +532 -0
- backlog_digest-1.0.0/src/backlog_digest/locales/uk.toml +535 -0
- backlog_digest-1.0.0/src/backlog_digest/menu.py +797 -0
- backlog_digest-1.0.0/src/backlog_digest/notes.py +210 -0
- backlog_digest-1.0.0/src/backlog_digest/paths.py +62 -0
- backlog_digest-1.0.0/src/backlog_digest/pipeline.py +585 -0
- backlog_digest-1.0.0/src/backlog_digest/raindrop.py +147 -0
- backlog_digest-1.0.0/src/backlog_digest/readers.py +314 -0
- backlog_digest-1.0.0/src/backlog_digest/runstate.py +84 -0
- backlog_digest-1.0.0/src/backlog_digest/schedule.py +280 -0
- backlog_digest-1.0.0/src/backlog_digest/shortcut.py +97 -0
- backlog_digest-1.0.0/src/backlog_digest/sorting_menu.py +165 -0
- backlog_digest-1.0.0/src/backlog_digest/summarize.py +250 -0
- backlog_digest-1.0.0/src/backlog_digest/tools.py +88 -0
- backlog_digest-1.0.0/src/backlog_digest/web.py +280 -0
- backlog_digest-1.0.0/src/backlog_digest/wizard.py +113 -0
- backlog_digest-1.0.0/src/backlog_digest/youtube.py +210 -0
- backlog_digest-1.0.0/tests/conftest.py +29 -0
- backlog_digest-1.0.0/tests/samples.py +72 -0
- backlog_digest-1.0.0/tests/test_cli.py +116 -0
- backlog_digest-1.0.0/tests/test_config.py +77 -0
- backlog_digest-1.0.0/tests/test_db.py +122 -0
- backlog_digest-1.0.0/tests/test_doctor.py +114 -0
- backlog_digest-1.0.0/tests/test_export.py +157 -0
- backlog_digest-1.0.0/tests/test_i18n.py +136 -0
- backlog_digest-1.0.0/tests/test_keys.py +23 -0
- backlog_digest-1.0.0/tests/test_library.py +119 -0
- backlog_digest-1.0.0/tests/test_llm.py +139 -0
- backlog_digest-1.0.0/tests/test_menu.py +244 -0
- backlog_digest-1.0.0/tests/test_notes.py +106 -0
- backlog_digest-1.0.0/tests/test_panel.py +53 -0
- backlog_digest-1.0.0/tests/test_pipeline.py +382 -0
- backlog_digest-1.0.0/tests/test_raindrop.py +146 -0
- backlog_digest-1.0.0/tests/test_readers.py +96 -0
- backlog_digest-1.0.0/tests/test_schedule.py +171 -0
- backlog_digest-1.0.0/tests/test_summarize.py +64 -0
- backlog_digest-1.0.0/tests/test_web.py +139 -0
- backlog_digest-1.0.0/tests/test_wizard.py +68 -0
- backlog_digest-1.0.0/tests/test_youtube.py +129 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes are listed here. The project follows [Semantic Versioning](https://semver.org/).
|
|
4
|
+
|
|
5
|
+
## 1.0.0 — first public release
|
|
6
|
+
|
|
7
|
+
### Sources
|
|
8
|
+
- **YouTube** playlists, channels and single videos through yt-dlp — no Google Cloud, no YouTube keys.
|
|
9
|
+
Two independent steps: collect subtitles (slow, gentle pauses, daily limit) and write summaries (fast).
|
|
10
|
+
Stops asking YouTube when it limits your address and keeps summarizing what is already collected.
|
|
11
|
+
- **Folders** of books and documents: PDF, EPUB, FB2, DOCX, ODT, RTF, HTML, TXT, MD; DJVU with DjVuLibre;
|
|
12
|
+
MOBI, AZW3, DOC with Calibre. Long books are read in parts and continue after a stop.
|
|
13
|
+
- **Web articles**: links, browser bookmarks (HTML export, with folder choice), Pocket, Instapaper, CSV.
|
|
14
|
+
Main text only.
|
|
15
|
+
- **Raindrop.io** bookmarks (read-only), collections become lists.
|
|
16
|
+
|
|
17
|
+
### Summaries
|
|
18
|
+
- A note per item: what it is about, key ideas and facts, what is new, grounding and questionable claims,
|
|
19
|
+
filler with timestamps, audience, verdict and a strict 1–5 score; pseudoscience goes to "Skip".
|
|
20
|
+
- Any summary language; interface in English, Ukrainian, French and Spanish.
|
|
21
|
+
- A queue of models with spares (Gemini, OpenRouter, DeepSeek, your own or local), daily quotas remembered.
|
|
22
|
+
- Output to an Obsidian vault or a plain Markdown folder.
|
|
23
|
+
|
|
24
|
+
### Library
|
|
25
|
+
- Sorting by topic: your own topics, "important / the rest" baskets or a topic tree proposed by the model,
|
|
26
|
+
with a preview before anything moves.
|
|
27
|
+
- A report and an index note per list: the best items, everything by topic, groups of repeats, off-topic,
|
|
28
|
+
unscientific, failed pages.
|
|
29
|
+
- Export to Raindrop.io: nested collections by list and topic, only new and changed items are sent.
|
|
30
|
+
|
|
31
|
+
### Running
|
|
32
|
+
- First-run wizard: from zero to the first summary in a few minutes.
|
|
33
|
+
- Schedule with catch-up after the computer was off; autostart through Task Scheduler (Windows),
|
|
34
|
+
launchd (macOS), a systemd timer or cron (Linux), without administrator rights.
|
|
35
|
+
- A data panel above the menu, a desktop shortcut, `bdig doctor` health check.
|
|
36
|
+
- Install with `uv tool install backlog-digest`.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Makss1974
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: backlog-digest
|
|
3
|
+
Version: 1.0.0
|
|
4
|
+
Summary: Turn your backlog of saved videos, articles, books and posts into a readable library.
|
|
5
|
+
Project-URL: Homepage, https://github.com/Makss1974/backlog-digest
|
|
6
|
+
Project-URL: Documentation, https://github.com/Makss1974/backlog-digest#readme
|
|
7
|
+
Project-URL: FAQ, https://github.com/Makss1974/backlog-digest/blob/main/docs/FAQ.md
|
|
8
|
+
Project-URL: Changelog, https://github.com/Makss1974/backlog-digest/blob/main/CHANGELOG.md
|
|
9
|
+
Project-URL: Issues, https://github.com/Makss1974/backlog-digest/issues
|
|
10
|
+
Author: Makss1974
|
|
11
|
+
License-Expression: MIT
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Keywords: bookmarks,gemini,llm,obsidian,raindrop,reading-list,summary,youtube
|
|
14
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
15
|
+
Classifier: Environment :: Console
|
|
16
|
+
Classifier: Intended Audience :: End Users/Desktop
|
|
17
|
+
Classifier: Natural Language :: English
|
|
18
|
+
Classifier: Natural Language :: French
|
|
19
|
+
Classifier: Natural Language :: Spanish
|
|
20
|
+
Classifier: Natural Language :: Ukrainian
|
|
21
|
+
Classifier: Operating System :: MacOS
|
|
22
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
23
|
+
Classifier: Operating System :: OS Independent
|
|
24
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
25
|
+
Classifier: Programming Language :: Python :: 3
|
|
26
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
27
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
28
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
29
|
+
Classifier: Topic :: Education
|
|
30
|
+
Classifier: Topic :: Text Processing :: General
|
|
31
|
+
Requires-Python: >=3.11
|
|
32
|
+
Requires-Dist: pypdf>=5
|
|
33
|
+
Requires-Dist: trafilatura<3,>=2
|
|
34
|
+
Requires-Dist: youtube-transcript-api<2,>=1.2
|
|
35
|
+
Requires-Dist: yt-dlp>=2025.1.1
|
|
36
|
+
Provides-Extra: dev
|
|
37
|
+
Requires-Dist: mypy>=1.10; extra == 'dev'
|
|
38
|
+
Requires-Dist: pytest>=8; extra == 'dev'
|
|
39
|
+
Requires-Dist: ruff>=0.6; extra == 'dev'
|
|
40
|
+
Description-Content-Type: text/markdown
|
|
41
|
+
|
|
42
|
+
# backlog-digest
|
|
43
|
+
|
|
44
|
+
**Work through your "saved for later" pile.** Thousands of saved videos, articles and books →
|
|
45
|
+
a library you can read in an evening.
|
|
46
|
+
|
|
47
|
+
[Українською](https://github.com/Makss1974/backlog-digest/blob/main/README.uk.md) · [FAQ](https://github.com/Makss1974/backlog-digest/blob/main/docs/FAQ.md) · [Example summary](https://github.com/Makss1974/backlog-digest/blob/main/docs/examples/video-summary.en.md) ·
|
|
48
|
+
License: [MIT](https://github.com/Makss1974/backlog-digest/blob/main/LICENSE)
|
|
49
|
+
|
|
50
|
+
For every item backlog-digest writes a summary with a **critical score** and an honest **"worth it or not"**
|
|
51
|
+
verdict, flags pseudoscience, sorts everything by topic, finds repeats, and puts the result into **your own**
|
|
52
|
+
Obsidian vault, a plain Markdown folder or Raindrop.io. It runs on your computer with free model keys, works
|
|
53
|
+
through thousands of items a little every day, and never loses progress.
|
|
54
|
+
|
|
55
|
+
```text
|
|
56
|
+
────────────────────────────────────────────────────────────
|
|
57
|
+
backlog-digest — 16 of 84 done, 66 in queue
|
|
58
|
+
waiting for subtitles: 44 (0 of 30 collected today) · ready to summarize: 22 · no text: 2
|
|
59
|
+
Sources: 2 (YouTube 1, Raindrop 1) · summaries → D:\Obsidian\Library
|
|
60
|
+
Models: 6 of 7 available · today's limit used up: gemini/gemini-3-flash-preview
|
|
61
|
+
────────────────────────────────────────────────────────────
|
|
62
|
+
1. Statistics
|
|
63
|
+
2. Sources: YouTube, folders, articles, Raindrop
|
|
64
|
+
3. Make summaries
|
|
65
|
+
4. Sort by topic + report
|
|
66
|
+
5. Export to Raindrop.io
|
|
67
|
+
6. Schedule
|
|
68
|
+
7. Health check (doctor)
|
|
69
|
+
8. Settings
|
|
70
|
+
q. Quit
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## What you get
|
|
74
|
+
|
|
75
|
+
A note per item ([full example](https://github.com/Makss1974/backlog-digest/blob/main/docs/examples/video-summary.en.md)):
|
|
76
|
+
|
|
77
|
+
> **Measles Explained — Vaccinate or Not?** · Kurzgesagt
|
|
78
|
+
>
|
|
79
|
+
> **Verdict: Watch** · Score: 5/5 ★★★★★
|
|
80
|
+
>
|
|
81
|
+
> **About:** how the measles virus bypasses the immune system, and why vaccination matters for herd immunity.
|
|
82
|
+
> **Key ideas and facts:** 10 points with numbers · **What is new** · **Grounding:** evidence level, what the
|
|
83
|
+
> author relies on, questionable claims · **How much filler:** ~10%, with timestamps · **Who it is for** ·
|
|
84
|
+
> **Why this verdict**
|
|
85
|
+
|
|
86
|
+
Verdicts: *Watch / Read*, *Watch part* (which fragments), *Summary is enough*, *Skip*. The score scale is
|
|
87
|
+
strict on purpose — an average item gets 3, and unscientific content goes to *Skip*.
|
|
88
|
+
|
|
89
|
+
Then, per list:
|
|
90
|
+
|
|
91
|
+
- **Sorting by topic** — your own topics, "important / the rest" baskets, or a topic tree the model proposes;
|
|
92
|
+
notes move into topic folders after you see a preview.
|
|
93
|
+
- **Index note** — the best items, everything by topic with scores, **groups of repeats** (watch only the
|
|
94
|
+
best one), off-topic and unscientific items, pages that failed.
|
|
95
|
+
- **Raindrop.io export** — nested collections by list and topic, with the summary in the bookmark note.
|
|
96
|
+
|
|
97
|
+
## Sources
|
|
98
|
+
|
|
99
|
+
| Source | How |
|
|
100
|
+
|---|---|
|
|
101
|
+
| **YouTube** — playlists, channels, single videos | Subtitles via yt-dlp — no Google Cloud, no YouTube keys |
|
|
102
|
+
| **Folders** of books and documents (also Google Drive / OneDrive / Dropbox folders) | PDF, EPUB, FB2, DOCX, ODT, RTF, HTML, TXT, MD; DJVU with DjVuLibre; MOBI, AZW3, DOC with Calibre |
|
|
103
|
+
| **Web articles** — links, browser bookmarks (HTML export), Pocket, Instapaper, CSV | Main text only (no menus, ads, comments) |
|
|
104
|
+
| **Raindrop.io** bookmarks | Collections become lists; read-only |
|
|
105
|
+
|
|
106
|
+
Long books are read in parts and continue after a stop. The same video or book in several lists is summarized
|
|
107
|
+
once. YouTube links inside bookmarks become videos, PDF links become books.
|
|
108
|
+
|
|
109
|
+
## Install
|
|
110
|
+
|
|
111
|
+
You only need [uv](https://docs.astral.sh/uv/) — a small tool that installs the right Python and
|
|
112
|
+
backlog-digest apart from the rest of your system. No administrator rights.
|
|
113
|
+
|
|
114
|
+
**1. Install uv** (once). Windows, in PowerShell:
|
|
115
|
+
|
|
116
|
+
```powershell
|
|
117
|
+
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
macOS and Linux, in a terminal:
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**2. Install backlog-digest**, then close and reopen the terminal:
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
uv tool install backlog-digest
|
|
130
|
+
uv tool update-shell
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
**3. Run it:**
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
bdig
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
On the first run a wizard sets everything up in a few minutes — language, notes folder, a model key, the first
|
|
140
|
+
source, how many per day, a daily schedule — and makes your first summary right away.
|
|
141
|
+
`bdig shortcut` puts a desktop shortcut that opens the program in its own window; `bdig doctor` checks that
|
|
142
|
+
everything is in place.
|
|
143
|
+
|
|
144
|
+
**Model key.** The easiest is a free Google Gemini key: open <https://aistudio.google.com/apikey>, sign in,
|
|
145
|
+
"Create API key", paste it into the wizard. OpenRouter and DeepSeek keys work too and serve as spares when one
|
|
146
|
+
model's daily limit runs out.
|
|
147
|
+
|
|
148
|
+
Upgrade: `uv tool upgrade backlog-digest`. Uninstall: `bdig autostart off`, then `uv tool uninstall backlog-digest`
|
|
149
|
+
(your notes stay where they are).
|
|
150
|
+
|
|
151
|
+
## Everyday use
|
|
152
|
+
|
|
153
|
+
Everything is in the menu (`bdig`); the same works as commands, which is handy for scripts:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
bdig add "https://www.youtube.com/playlist?list=..." --name Science # a YouTube source
|
|
157
|
+
bdig add "D:\Books" # a folder of books
|
|
158
|
+
bdig add bookmarks.html --only "Reading/Science" # browser bookmarks, one folder
|
|
159
|
+
bdig add raindrop "Read later" # Raindrop collections
|
|
160
|
+
bdig sync # find new items in all sources
|
|
161
|
+
bdig process --limit 20 # collect texts and write summaries
|
|
162
|
+
bdig export # send summaries to Raindrop
|
|
163
|
+
bdig run-jobs --force # run the scheduled jobs now
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**Schedule.** Menu → 6: what to do (update lists → summaries → report → Raindrop), how many, daily or weekly,
|
|
167
|
+
"not before HH:MM". Autostart uses the system scheduler without administrator rights — Task Scheduler on
|
|
168
|
+
Windows, launchd on macOS, a systemd timer or cron on Linux. If the computer was off, the job catches up the
|
|
169
|
+
next time. A log goes to a file and to a "_Schedule log" note.
|
|
170
|
+
|
|
171
|
+
**Gentle with limits.** Free models and YouTube have daily limits, so the program works in portions:
|
|
172
|
+
1–3 minute pauses between subtitle requests, at most 30 subtitle requests a day (configurable), a queue of spare
|
|
173
|
+
models, and if YouTube limits your address it stops asking and keeps summarizing what is already collected.
|
|
174
|
+
Ctrl+C stops at any moment; the next run continues where it stopped.
|
|
175
|
+
|
|
176
|
+
**Languages.** The interface is in English, Ukrainian, French and Spanish. Summaries can be in any language,
|
|
177
|
+
regardless of the language of the video or book.
|
|
178
|
+
|
|
179
|
+
## Your data stays yours
|
|
180
|
+
|
|
181
|
+
- Everything runs on your computer. Notes are plain Markdown files in your folder.
|
|
182
|
+
- Sources are read-only: nothing is changed in YouTube, your bookmarks or Raindrop (the export goes into its own
|
|
183
|
+
collection).
|
|
184
|
+
- Keys live in environment variables or in a `.env` file in the settings folder; the program never shows them.
|
|
185
|
+
- No telemetry.
|
|
186
|
+
|
|
187
|
+
| What | Windows | macOS | Linux |
|
|
188
|
+
|---|---|---|---|
|
|
189
|
+
| Settings `config.toml` and keys `.env` | `%APPDATA%\backlog-digest` | `~/Library/Application Support/backlog-digest` | `~/.config/backlog-digest` |
|
|
190
|
+
| Database, cache, logs | `%LOCALAPPDATA%\backlog-digest` | same | `~/.local/share/backlog-digest` |
|
|
191
|
+
|
|
192
|
+
`BACKLOG_DIGEST_HOME=<folder>` (or `bdig --home <folder>`) keeps everything in one folder.
|
|
193
|
+
|
|
194
|
+
## More
|
|
195
|
+
|
|
196
|
+
- [FAQ](https://github.com/Makss1974/backlog-digest/blob/main/docs/FAQ.md): limits, blocked YouTube, scanned books, long paths on Windows and other pitfalls.
|
|
197
|
+
- [Development](https://github.com/Makss1974/backlog-digest/blob/main/docs/development.md): running from source, tests, project layout.
|
|
198
|
+
- [Specification](https://github.com/Makss1974/backlog-digest/blob/main/docs/ТЗ.md) (Ukrainian).
|
|
199
|
+
|
|
200
|
+
Grew out of the author's personal tool `yt-digest`, used daily for video summaries.
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
# backlog-digest
|
|
2
|
+
|
|
3
|
+
**Work through your "saved for later" pile.** Thousands of saved videos, articles and books →
|
|
4
|
+
a library you can read in an evening.
|
|
5
|
+
|
|
6
|
+
[Українською](https://github.com/Makss1974/backlog-digest/blob/main/README.uk.md) · [FAQ](https://github.com/Makss1974/backlog-digest/blob/main/docs/FAQ.md) · [Example summary](https://github.com/Makss1974/backlog-digest/blob/main/docs/examples/video-summary.en.md) ·
|
|
7
|
+
License: [MIT](https://github.com/Makss1974/backlog-digest/blob/main/LICENSE)
|
|
8
|
+
|
|
9
|
+
For every item backlog-digest writes a summary with a **critical score** and an honest **"worth it or not"**
|
|
10
|
+
verdict, flags pseudoscience, sorts everything by topic, finds repeats, and puts the result into **your own**
|
|
11
|
+
Obsidian vault, a plain Markdown folder or Raindrop.io. It runs on your computer with free model keys, works
|
|
12
|
+
through thousands of items a little every day, and never loses progress.
|
|
13
|
+
|
|
14
|
+
```text
|
|
15
|
+
────────────────────────────────────────────────────────────
|
|
16
|
+
backlog-digest — 16 of 84 done, 66 in queue
|
|
17
|
+
waiting for subtitles: 44 (0 of 30 collected today) · ready to summarize: 22 · no text: 2
|
|
18
|
+
Sources: 2 (YouTube 1, Raindrop 1) · summaries → D:\Obsidian\Library
|
|
19
|
+
Models: 6 of 7 available · today's limit used up: gemini/gemini-3-flash-preview
|
|
20
|
+
────────────────────────────────────────────────────────────
|
|
21
|
+
1. Statistics
|
|
22
|
+
2. Sources: YouTube, folders, articles, Raindrop
|
|
23
|
+
3. Make summaries
|
|
24
|
+
4. Sort by topic + report
|
|
25
|
+
5. Export to Raindrop.io
|
|
26
|
+
6. Schedule
|
|
27
|
+
7. Health check (doctor)
|
|
28
|
+
8. Settings
|
|
29
|
+
q. Quit
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## What you get
|
|
33
|
+
|
|
34
|
+
A note per item ([full example](https://github.com/Makss1974/backlog-digest/blob/main/docs/examples/video-summary.en.md)):
|
|
35
|
+
|
|
36
|
+
> **Measles Explained — Vaccinate or Not?** · Kurzgesagt
|
|
37
|
+
>
|
|
38
|
+
> **Verdict: Watch** · Score: 5/5 ★★★★★
|
|
39
|
+
>
|
|
40
|
+
> **About:** how the measles virus bypasses the immune system, and why vaccination matters for herd immunity.
|
|
41
|
+
> **Key ideas and facts:** 10 points with numbers · **What is new** · **Grounding:** evidence level, what the
|
|
42
|
+
> author relies on, questionable claims · **How much filler:** ~10%, with timestamps · **Who it is for** ·
|
|
43
|
+
> **Why this verdict**
|
|
44
|
+
|
|
45
|
+
Verdicts: *Watch / Read*, *Watch part* (which fragments), *Summary is enough*, *Skip*. The score scale is
|
|
46
|
+
strict on purpose — an average item gets 3, and unscientific content goes to *Skip*.
|
|
47
|
+
|
|
48
|
+
Then, per list:
|
|
49
|
+
|
|
50
|
+
- **Sorting by topic** — your own topics, "important / the rest" baskets, or a topic tree the model proposes;
|
|
51
|
+
notes move into topic folders after you see a preview.
|
|
52
|
+
- **Index note** — the best items, everything by topic with scores, **groups of repeats** (watch only the
|
|
53
|
+
best one), off-topic and unscientific items, pages that failed.
|
|
54
|
+
- **Raindrop.io export** — nested collections by list and topic, with the summary in the bookmark note.
|
|
55
|
+
|
|
56
|
+
## Sources
|
|
57
|
+
|
|
58
|
+
| Source | How |
|
|
59
|
+
|---|---|
|
|
60
|
+
| **YouTube** — playlists, channels, single videos | Subtitles via yt-dlp — no Google Cloud, no YouTube keys |
|
|
61
|
+
| **Folders** of books and documents (also Google Drive / OneDrive / Dropbox folders) | PDF, EPUB, FB2, DOCX, ODT, RTF, HTML, TXT, MD; DJVU with DjVuLibre; MOBI, AZW3, DOC with Calibre |
|
|
62
|
+
| **Web articles** — links, browser bookmarks (HTML export), Pocket, Instapaper, CSV | Main text only (no menus, ads, comments) |
|
|
63
|
+
| **Raindrop.io** bookmarks | Collections become lists; read-only |
|
|
64
|
+
|
|
65
|
+
Long books are read in parts and continue after a stop. The same video or book in several lists is summarized
|
|
66
|
+
once. YouTube links inside bookmarks become videos, PDF links become books.
|
|
67
|
+
|
|
68
|
+
## Install
|
|
69
|
+
|
|
70
|
+
You only need [uv](https://docs.astral.sh/uv/) — a small tool that installs the right Python and
|
|
71
|
+
backlog-digest apart from the rest of your system. No administrator rights.
|
|
72
|
+
|
|
73
|
+
**1. Install uv** (once). Windows, in PowerShell:
|
|
74
|
+
|
|
75
|
+
```powershell
|
|
76
|
+
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
macOS and Linux, in a terminal:
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**2. Install backlog-digest**, then close and reopen the terminal:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
uv tool install backlog-digest
|
|
89
|
+
uv tool update-shell
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
**3. Run it:**
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
bdig
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
On the first run a wizard sets everything up in a few minutes — language, notes folder, a model key, the first
|
|
99
|
+
source, how many per day, a daily schedule — and makes your first summary right away.
|
|
100
|
+
`bdig shortcut` puts a desktop shortcut that opens the program in its own window; `bdig doctor` checks that
|
|
101
|
+
everything is in place.
|
|
102
|
+
|
|
103
|
+
**Model key.** The easiest is a free Google Gemini key: open <https://aistudio.google.com/apikey>, sign in,
|
|
104
|
+
"Create API key", paste it into the wizard. OpenRouter and DeepSeek keys work too and serve as spares when one
|
|
105
|
+
model's daily limit runs out.
|
|
106
|
+
|
|
107
|
+
Upgrade: `uv tool upgrade backlog-digest`. Uninstall: `bdig autostart off`, then `uv tool uninstall backlog-digest`
|
|
108
|
+
(your notes stay where they are).
|
|
109
|
+
|
|
110
|
+
## Everyday use
|
|
111
|
+
|
|
112
|
+
Everything is in the menu (`bdig`); the same works as commands, which is handy for scripts:
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
bdig add "https://www.youtube.com/playlist?list=..." --name Science # a YouTube source
|
|
116
|
+
bdig add "D:\Books" # a folder of books
|
|
117
|
+
bdig add bookmarks.html --only "Reading/Science" # browser bookmarks, one folder
|
|
118
|
+
bdig add raindrop "Read later" # Raindrop collections
|
|
119
|
+
bdig sync # find new items in all sources
|
|
120
|
+
bdig process --limit 20 # collect texts and write summaries
|
|
121
|
+
bdig export # send summaries to Raindrop
|
|
122
|
+
bdig run-jobs --force # run the scheduled jobs now
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**Schedule.** Menu → 6: what to do (update lists → summaries → report → Raindrop), how many, daily or weekly,
|
|
126
|
+
"not before HH:MM". Autostart uses the system scheduler without administrator rights — Task Scheduler on
|
|
127
|
+
Windows, launchd on macOS, a systemd timer or cron on Linux. If the computer was off, the job catches up the
|
|
128
|
+
next time. A log goes to a file and to a "_Schedule log" note.
|
|
129
|
+
|
|
130
|
+
**Gentle with limits.** Free models and YouTube have daily limits, so the program works in portions:
|
|
131
|
+
1–3 minute pauses between subtitle requests, at most 30 subtitle requests a day (configurable), a queue of spare
|
|
132
|
+
models, and if YouTube limits your address it stops asking and keeps summarizing what is already collected.
|
|
133
|
+
Ctrl+C stops at any moment; the next run continues where it stopped.
|
|
134
|
+
|
|
135
|
+
**Languages.** The interface is in English, Ukrainian, French and Spanish. Summaries can be in any language,
|
|
136
|
+
regardless of the language of the video or book.
|
|
137
|
+
|
|
138
|
+
## Your data stays yours
|
|
139
|
+
|
|
140
|
+
- Everything runs on your computer. Notes are plain Markdown files in your folder.
|
|
141
|
+
- Sources are read-only: nothing is changed in YouTube, your bookmarks or Raindrop (the export goes into its own
|
|
142
|
+
collection).
|
|
143
|
+
- Keys live in environment variables or in a `.env` file in the settings folder; the program never shows them.
|
|
144
|
+
- No telemetry.
|
|
145
|
+
|
|
146
|
+
| What | Windows | macOS | Linux |
|
|
147
|
+
|---|---|---|---|
|
|
148
|
+
| Settings `config.toml` and keys `.env` | `%APPDATA%\backlog-digest` | `~/Library/Application Support/backlog-digest` | `~/.config/backlog-digest` |
|
|
149
|
+
| Database, cache, logs | `%LOCALAPPDATA%\backlog-digest` | same | `~/.local/share/backlog-digest` |
|
|
150
|
+
|
|
151
|
+
`BACKLOG_DIGEST_HOME=<folder>` (or `bdig --home <folder>`) keeps everything in one folder.
|
|
152
|
+
|
|
153
|
+
## More
|
|
154
|
+
|
|
155
|
+
- [FAQ](https://github.com/Makss1974/backlog-digest/blob/main/docs/FAQ.md): limits, blocked YouTube, scanned books, long paths on Windows and other pitfalls.
|
|
156
|
+
- [Development](https://github.com/Makss1974/backlog-digest/blob/main/docs/development.md): running from source, tests, project layout.
|
|
157
|
+
- [Specification](https://github.com/Makss1974/backlog-digest/blob/main/docs/ТЗ.md) (Ukrainian).
|
|
158
|
+
|
|
159
|
+
Grew out of the author's personal tool `yt-digest`, used daily for video summaries.
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
# backlog-digest
|
|
2
|
+
|
|
3
|
+
**Розбери свої завали.** Тисячі збережених відео, статей і книг → бібліотека, яку можна прочитати за вечір.
|
|
4
|
+
|
|
5
|
+
[English](README.md) · [Питання й відповіді](docs/FAQ.uk.md) · [Приклад конспекту](docs/examples/video-summary.uk.md) ·
|
|
6
|
+
Ліцензія: [MIT](LICENSE)
|
|
7
|
+
|
|
8
|
+
Для кожного елемента backlog-digest пише конспект із **критичною оцінкою** й чесним вердиктом **«варто чи ні»**,
|
|
9
|
+
позначає псевдонауку, розкладає все за темами, знаходить повтори й складає результат у **ваше** сховище Obsidian,
|
|
10
|
+
звичайну теку Markdown або Raindrop.io. Працює на вашому комп'ютері з безкоштовними ключами моделей, розбирає
|
|
11
|
+
тисячі елементів потроху щодня й ніколи не губить прогрес.
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
────────────────────────────────────────────────────────────
|
|
15
|
+
backlog-digest — готово 16 з 84, у черзі 66
|
|
16
|
+
чекають субтитрів: 44 (сьогодні зібрано 0 з 30) · готові до конспекту: 22 · без тексту: 2
|
|
17
|
+
Джерела: 2 (YouTube 1, Raindrop 1) · конспекти → D:\Obsidian\Бібліотека
|
|
18
|
+
Моделі: доступно 6 з 7 · ліміт на сьогодні вичерпано: gemini/gemini-3-flash-preview
|
|
19
|
+
────────────────────────────────────────────────────────────
|
|
20
|
+
1. Статистика
|
|
21
|
+
2. Джерела: YouTube, папки, статті, Raindrop
|
|
22
|
+
3. Зробити конспекти
|
|
23
|
+
4. Сортування за темами + звіт
|
|
24
|
+
5. Експорт у Raindrop.io
|
|
25
|
+
6. Розклад
|
|
26
|
+
7. Перевірка (doctor)
|
|
27
|
+
8. Налаштування
|
|
28
|
+
q. Вихід
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Що виходить
|
|
32
|
+
|
|
33
|
+
Нотатка на кожен елемент ([повний приклад](docs/examples/video-summary.uk.md)):
|
|
34
|
+
|
|
35
|
+
> **Measles Explained — Vaccinate or Not?** · Kurzgesagt
|
|
36
|
+
>
|
|
37
|
+
> **Вердикт: Дивитися** · Оцінка: 5/5 ★★★★★
|
|
38
|
+
>
|
|
39
|
+
> **Про що:** як вірус кору обходить імунну систему і чому щеплення важливі для колективного імунітету.
|
|
40
|
+
> **Ключові ідеї та факти:** 10 пунктів із цифрами · **Що нового** · **Обґрунтованість:** рівень доказів,
|
|
41
|
+
> на що спирається автор, сумнівні твердження · **Скільки «води»:** ~10%, з позначками часу · **Для кого** ·
|
|
42
|
+
> **Чому такий вердикт**
|
|
43
|
+
|
|
44
|
+
Вердикти: *Дивитися / Читати*, *Переглянути частину* (які саме фрагменти), *Достатньо конспекту*, *Пропустити*.
|
|
45
|
+
Шкала оцінок навмисно сувора: звичайний матеріал отримує 3, ненаукове — «Пропустити».
|
|
46
|
+
|
|
47
|
+
Далі — для кожного списку:
|
|
48
|
+
|
|
49
|
+
- **Сортування за темами** — ваші теми, кошики «важливо / решта» або дерево тем, яке запропонує модель;
|
|
50
|
+
нотатки переносяться в теки тем лише після попереднього перегляду.
|
|
51
|
+
- **Індекс списку** — найкращі, усе за темами з оцінками, **групи повторів** (досить подивитися найкраще),
|
|
52
|
+
не в темі, ненаукове, сторінки з помилками.
|
|
53
|
+
- **Експорт у Raindrop.io** — вкладені колекції за списками й темами, конспект — у нотатці закладки.
|
|
54
|
+
|
|
55
|
+
## Встановлення
|
|
56
|
+
|
|
57
|
+
Знадобиться лише [uv](https://docs.astral.sh/uv/) — невелика програма, яка сама поставить потрібний Python
|
|
58
|
+
і backlog-digest окремо від решти системи. Права адміністратора не потрібні.
|
|
59
|
+
|
|
60
|
+
**1. Встановіть uv** (один раз). Windows — у PowerShell:
|
|
61
|
+
|
|
62
|
+
```powershell
|
|
63
|
+
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
macOS і Linux — у Терміналі:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
**2. Встановіть backlog-digest**, потім закрийте й знову відкрийте вікно терміналу:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
uv tool install backlog-digest
|
|
76
|
+
uv tool update-shell
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**3. Запустіть:**
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
bdig
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Під час першого запуску майстер за кілька хвилин усе налаштує — мову, теку для конспектів, ключ моделі,
|
|
86
|
+
перше джерело, скільки на день, щоденний розклад — і одразу зробить перший конспект. Повторно: `bdig setup`.
|
|
87
|
+
`bdig shortcut` — ярлик на робочому столі (програма відкривається в окремому вікні); `bdig doctor` — перевірка,
|
|
88
|
+
чи все на місці.
|
|
89
|
+
|
|
90
|
+
**Ключ моделі.** Найпростіше — безкоштовний ключ Google Gemini: відкрийте <https://aistudio.google.com/apikey>,
|
|
91
|
+
увійдіть, «Create API key», вставте в майстрі (меню → 8 → 4). Ключі OpenRouter і DeepSeek теж підходять —
|
|
92
|
+
вони запасні, коли в однієї моделі скінчився добовий ліміт.
|
|
93
|
+
|
|
94
|
+
Оновлення — `uv tool upgrade backlog-digest`. Видалення — `bdig autostart off`, потім
|
|
95
|
+
`uv tool uninstall backlog-digest` (конспекти лишаються у вашій теці).
|
|
96
|
+
|
|
97
|
+
## Джерела
|
|
98
|
+
|
|
99
|
+
### YouTube
|
|
100
|
+
|
|
101
|
+
Без Google Cloud і без ключів YouTube. Меню → 2 Джерела → 1 → посилання на плейлист, канал (`@назва`) або відео.
|
|
102
|
+
|
|
103
|
+
Обробка має два незалежні кроки — їх можна робити разом або окремо, у різний час:
|
|
104
|
+
- **зібрати субтитри** — повільно, з вашої інтернет-адреси, моделі не потрібні. Тексти лежать у базі,
|
|
105
|
+
доки не готовий конспект, потім видаляються;
|
|
106
|
+
- **зробити конспекти** із зібраного — YouTube не потрібен, швидко, скільки дозволяють ліміти моделей.
|
|
107
|
+
|
|
108
|
+
Коли YouTube тимчасово обмежив вашу адресу, конспекти з уже зібраного далі робляться, а коли скінчились
|
|
109
|
+
ліміти моделей — далі збираються субтитри. Між запитами субтитрів — випадкова пауза 1–3 хв і не більше
|
|
110
|
+
30 запитів на добу (`[youtube] delay_min/delay_max`, `[limits] per_day` у `config.toml`). Відео без субтитрів
|
|
111
|
+
отримують статус «без тексту». Те саме відео в кількох списках конспектується один раз.
|
|
112
|
+
|
|
113
|
+
### Книги й документи з папки
|
|
114
|
+
|
|
115
|
+
Меню → 2 → 2 → повний шлях до теки (можна синхронізовану: Google Drive, OneDrive, Dropbox). Підтеки першого
|
|
116
|
+
рівня стають окремими списками.
|
|
117
|
+
|
|
118
|
+
- Формати: PDF, EPUB, FB2 (і .fb2.zip), DOCX, ODT, RTF, HTML, TXT, MD — без додаткових програм;
|
|
119
|
+
DJVU — безкоштовна DjVuLibre; MOBI, AZW3, DOC — безкоштовна Calibre (`bdig doctor` покаже, чи знайдено).
|
|
120
|
+
- Довга книга читається частинами: спершу робочі нотатки частин, потім підсумковий конспект; після зупинки
|
|
121
|
+
продовжується з того самого місця.
|
|
122
|
+
- Скан без текстового шару отримує статус «без тексту». Перейменований чи переміщений файл не стає новим.
|
|
123
|
+
|
|
124
|
+
### Веб-статті й закладки браузера
|
|
125
|
+
|
|
126
|
+
Меню → 2 → 3 → по одному в рядку: посилання або шлях до файлу — HTML-експорт закладок Chrome, Edge, Firefox,
|
|
127
|
+
Safari (теки стають списками), експорт Pocket (HTML, CSV), Instapaper (CSV), будь-який CSV зі стовпцем `url`
|
|
128
|
+
або TXT з посиланнями.
|
|
129
|
+
|
|
130
|
+
- Береться лише основний текст сторінки (без меню, реклами й коментарів), з назвою, автором і датою.
|
|
131
|
+
Посилання на PDF читається як книга, на YouTube — як відео.
|
|
132
|
+
- Сторінки, якої більше немає, і сторінки без тексту (вхід, платний доступ) отримують «без тексту»;
|
|
133
|
+
тимчасові помилки сайту — повтор пізніше.
|
|
134
|
+
- **Лише потрібні теки.** Після файлу закладок програма показує теки з кількістю посилань: номер — вибрати
|
|
135
|
+
(з вкладеними), `>номер` — відкрити, `<` — назад, Enter — готово. Командою: `--only "Читати/Наука"`.
|
|
136
|
+
- Файл можна перезберегти з браузера — додадуться лише нові посилання.
|
|
137
|
+
|
|
138
|
+
### Raindrop.io
|
|
139
|
+
|
|
140
|
+
1. **Токен:** <https://app.raindrop.io/settings/integrations> → «Create new app» (назва будь-яка) →
|
|
141
|
+
відкрити створену програму → «Create test token».
|
|
142
|
+
2. Меню → 2 → 4 → вставити токен (його не видно; перевіряється й зберігається у `.env`) → вибрати колекції
|
|
143
|
+
або Enter — усі закладки.
|
|
144
|
+
|
|
145
|
+
Колекції стають списками («Наука/Фізика»), «Несортовані» — без списку. Програма лише читає закладки.
|
|
146
|
+
|
|
147
|
+
## Сортування, індекс, експорт
|
|
148
|
+
|
|
149
|
+
**Сортування за темами** (меню → 4 → список):
|
|
150
|
+
- **Мої теми** — теми й підтеми пишете ви (відкривається Блокнот / TextEdit / nano; підтема — з відступом);
|
|
151
|
+
- **Важливість** — кошики на зразок «Важливо, Різне» за вашим правилом словами;
|
|
152
|
+
- **Авто** — модель пропонує дерево тем, його можна виправити.
|
|
153
|
+
|
|
154
|
+
Можна додати критерії (зміст, цінність, глибина, обґрунтованість) і свої правила словами. Спершу —
|
|
155
|
+
попередній перегляд, нотатки переносяться лише після згоди. На 40 конспектів — один запит до моделі.
|
|
156
|
+
Схема запам'ятовується: нові конспекти списку розкладаються в її теми самі.
|
|
157
|
+
|
|
158
|
+
**Звіт та індекс.** Одним запитом модель визначає головну тему списку, групи повторів (✅ на найкращому)
|
|
159
|
+
і що не в темі. У теці списку з'являється нотатка `_Індекс — <список>.md`; після кожної обробки вона
|
|
160
|
+
оновлюється сама.
|
|
161
|
+
|
|
162
|
+
**Експорт у Raindrop.io** (меню → 5 або `bdig export`): окрема коренева колекція «Backlog digest», усередині —
|
|
163
|
+
списки й теми. Повторний експорт надсилає лише нове й змінене. Ваші закладки не змінюються, а колекція
|
|
164
|
+
експорту не імпортується назад.
|
|
165
|
+
|
|
166
|
+
## Розклад
|
|
167
|
+
|
|
168
|
+
Меню → 6: що робити (оновити списки → конспекти → звіт → Raindrop), скільки, щодня чи раз на тиждень,
|
|
169
|
+
«не раніше ГГ:ХХ». Автозапуск — системним планувальником без прав адміністратора: Планувальник завдань Windows
|
|
170
|
+
(без вікна), launchd на macOS, таймер systemd або cron на Linux. Комп'ютер був вимкнений — завдання
|
|
171
|
+
наздожене при наступному ввімкненні. Паралельно не запускається; журнал — у файлі й у нотатці
|
|
172
|
+
«_Журнал розкладу».
|
|
173
|
+
|
|
174
|
+
## Команди
|
|
175
|
+
|
|
176
|
+
Усе є в меню (`bdig`); те саме командами — зручно для скриптів:
|
|
177
|
+
|
|
178
|
+
```bash
|
|
179
|
+
bdig add "https://www.youtube.com/playlist?list=..." --name "Наука" # джерело YouTube
|
|
180
|
+
bdig add "D:\Книги" # тека з книгами
|
|
181
|
+
bdig add bookmarks.html --only "Читати/Наука" # закладки, одна тека
|
|
182
|
+
bdig add raindrop "Читати пізніше" # колекції Raindrop
|
|
183
|
+
bdig sync # знайти нове в усіх джерелах
|
|
184
|
+
bdig process --limit 20 # зібрати тексти й зробити конспекти
|
|
185
|
+
bdig fetch --limit 30 # лише зібрати субтитри
|
|
186
|
+
bdig summarize # лише конспекти із зібраного
|
|
187
|
+
bdig export # конспекти — у Raindrop
|
|
188
|
+
bdig run-jobs --force # виконати завдання розкладу зараз
|
|
189
|
+
bdig autostart on|off|status # автозапуск розкладу
|
|
190
|
+
bdig --lang fr doctor # перевірка французькою (uk, en, fr, es)
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
Ctrl+C зупиняє будь-якої миті, наступний запуск продовжить з того самого місця.
|
|
194
|
+
|
|
195
|
+
## Ваші дані — ваші
|
|
196
|
+
|
|
197
|
+
- Усе працює на вашому комп'ютері; конспекти — звичайні файли Markdown у вашій теці.
|
|
198
|
+
- Джерела лише читаються: у YouTube, закладках і Raindrop нічого не змінюється (експорт — в окрему колекцію).
|
|
199
|
+
- Ключі — у змінних середовища або у файлі `.env` у теці налаштувань; програма ніколи не показує їхні значення.
|
|
200
|
+
- Без телеметрії.
|
|
201
|
+
|
|
202
|
+
| Що | Windows | macOS | Linux |
|
|
203
|
+
|---|---|---|---|
|
|
204
|
+
| Налаштування `config.toml` і ключі `.env` | `%APPDATA%\backlog-digest` | `~/Library/Application Support/backlog-digest` | `~/.config/backlog-digest` |
|
|
205
|
+
| База, кеш, журнали | `%LOCALAPPDATA%\backlog-digest` | те саме | `~/.local/share/backlog-digest` |
|
|
206
|
+
|
|
207
|
+
`BACKLOG_DIGEST_HOME=<тека>` (або `bdig --home <тека>`) кладе все в одну теку.
|
|
208
|
+
|
|
209
|
+
Мова інтерфейсу (uk, en, fr, es) і мова конспектів (будь-яка) — окремі налаштування (меню → 8).
|
|
210
|
+
|
|
211
|
+
## Ще
|
|
212
|
+
|
|
213
|
+
- [Питання й відповіді](docs/FAQ.uk.md): ліміти, обмеження YouTube, скани, довгі шляхи Windows та інші граблі.
|
|
214
|
+
- [Розробка](docs/development.md): запуск із коду, тести, будова проєкту.
|
|
215
|
+
- [Технічне завдання](docs/ТЗ.md).
|
|
216
|
+
|
|
217
|
+
Виріс з особистого інструмента автора `yt-digest`, яким автор щодня робить конспекти відео.
|