convoviz 0.4.0__tar.gz → 0.4.2__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.
Files changed (63) hide show
  1. convoviz-0.4.2/PKG-INFO +216 -0
  2. convoviz-0.4.2/README.md +191 -0
  3. {convoviz-0.4.0 → convoviz-0.4.2}/pyproject.toml +1 -1
  4. convoviz-0.4.0/PKG-INFO +0 -146
  5. convoviz-0.4.0/README.md +0 -121
  6. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/__init__.py +0 -0
  7. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/__main__.py +0 -0
  8. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/analysis/__init__.py +0 -0
  9. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/analysis/graphs.py +0 -0
  10. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/analysis/wordcloud.py +0 -0
  11. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/colormaps.txt +0 -0
  12. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/AmaticSC-Regular.ttf +0 -0
  13. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/ArchitectsDaughter-Regular.ttf +0 -0
  14. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/BebasNeue-Regular.ttf +0 -0
  15. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Borel-Regular.ttf +0 -0
  16. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Courgette-Regular.ttf +0 -0
  17. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/CroissantOne-Regular.ttf +0 -0
  18. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Handjet-Regular.ttf +0 -0
  19. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/IndieFlower-Regular.ttf +0 -0
  20. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Kalam-Regular.ttf +0 -0
  21. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Lobster-Regular.ttf +0 -0
  22. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/MartianMono-Regular.ttf +0 -0
  23. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/MartianMono-Thin.ttf +0 -0
  24. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Montserrat-Regular.ttf +0 -0
  25. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Mooli-Regular.ttf +0 -0
  26. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Pacifico-Regular.ttf +0 -0
  27. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/PlayfairDisplay-Regular.ttf +0 -0
  28. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Raleway-Regular.ttf +0 -0
  29. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/RobotoMono-Regular.ttf +0 -0
  30. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/RobotoMono-Thin.ttf +0 -0
  31. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/RobotoSlab-Regular.ttf +0 -0
  32. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/RobotoSlab-Thin.ttf +0 -0
  33. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Ruwudu-Regular.ttf +0 -0
  34. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Sacramento-Regular.ttf +0 -0
  35. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/SedgwickAveDisplay-Regular.ttf +0 -0
  36. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/ShadowsIntoLight-Regular.ttf +0 -0
  37. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/TitilliumWeb-Regular.ttf +0 -0
  38. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Yellowtail-Regular.ttf +0 -0
  39. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/YsabeauOffice-Regular.ttf +0 -0
  40. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/YsabeauSC-Regular.ttf +0 -0
  41. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/YsabeauSC-Thin.ttf +0 -0
  42. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/fonts/Zeyada-Regular.ttf +0 -0
  43. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/assets/stopwords.txt +0 -0
  44. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/cli.py +0 -0
  45. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/config.py +0 -0
  46. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/exceptions.py +0 -0
  47. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/interactive.py +0 -0
  48. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/io/__init__.py +0 -0
  49. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/io/assets.py +0 -0
  50. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/io/loaders.py +0 -0
  51. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/io/writers.py +0 -0
  52. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/logging_config.py +0 -0
  53. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/models/__init__.py +0 -0
  54. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/models/collection.py +0 -0
  55. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/models/conversation.py +0 -0
  56. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/models/message.py +0 -0
  57. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/models/node.py +0 -0
  58. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/pipeline.py +0 -0
  59. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/py.typed +0 -0
  60. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/renderers/__init__.py +0 -0
  61. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/renderers/markdown.py +0 -0
  62. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/renderers/yaml.py +0 -0
  63. {convoviz-0.4.0 → convoviz-0.4.2}/convoviz/utils.py +0 -0
@@ -0,0 +1,216 @@
1
+ Metadata-Version: 2.4
2
+ Name: convoviz
3
+ Version: 0.4.2
4
+ Summary: Get analytics and visualizations on your ChatGPT data!
5
+ Keywords: markdown,chatgpt,openai,visualization,analytics,json,export,data-analysis,obsidian
6
+ Author: Mohamed Cheikh Sidiya
7
+ Author-email: Mohamed Cheikh Sidiya <mohamedcheikhsidiya77@gmail.com>
8
+ License-Expression: MIT
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.12
12
+ Requires-Dist: orjson>=3.11.5
13
+ Requires-Dist: pydantic>=2.12.5
14
+ Requires-Dist: pydantic-settings>=2.7.0
15
+ Requires-Dist: questionary>=2.1.1
16
+ Requires-Dist: rich>=14.2.0
17
+ Requires-Dist: tqdm>=4.67.1
18
+ Requires-Dist: typer>=0.21.0
19
+ Requires-Dist: nltk>=3.9.2 ; extra == 'viz'
20
+ Requires-Dist: wordcloud>=1.9.5 ; extra == 'viz'
21
+ Requires-Python: >=3.12
22
+ Project-URL: Repository, https://github.com/mohamed-chs/convoviz
23
+ Provides-Extra: viz
24
+ Description-Content-Type: text/markdown
25
+
26
+ <p align="center">
27
+ <h1 align="center">Convoviz 📊</h1>
28
+ <p align="center"><strong>Visualize your entire ChatGPT data</strong></p>
29
+ <p align="center">
30
+ Convert your ChatGPT history into well-formatted Markdown files.<br>
31
+ Visualize your data with word clouds 🔡☁️ and usage graphs 📈.
32
+ </p>
33
+ </p>
34
+
35
+ <p align="center">
36
+ <a href="https://pypi.org/project/convoviz/"><img src="https://img.shields.io/pypi/v/convoviz?style=for-the-badge&logo=python&logoColor=white" alt="PyPI Version"></a>
37
+ <a href="https://github.com/mohamed-chs/convoviz/blob/main/LICENSE"><img src="https://img.shields.io/pypi/l/convoviz?style=for-the-badge" alt="License"></a>
38
+ <a href="https://pepy.tech/projects/convoviz"><img src="https://img.shields.io/pepy/dt/convoviz?style=for-the-badge" alt="Downloads"></a>
39
+ <a href="https://github.com/mohamed-chs/convoviz/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/mohamed-chs/convoviz/ci.yml?style=for-the-badge&logo=github&label=CI" alt="CI Status"></a>
40
+ </p>
41
+
42
+ ---
43
+
44
+ ## ✨ Features
45
+
46
+ | Feature | Description |
47
+ |---------|-------------|
48
+ | 📝 **Markdown Export** | Clean, well-formatted Markdown with optional YAML headers |
49
+ | 🖼️ **Inline Images** | Media attachments rendered directly in your Markdown files |
50
+ | ☁️ **Word Clouds** | Visual breakdowns of your most-used words and phrases |
51
+ | 📈 **Usage Graphs** | Bar plots and charts showing your conversation patterns |
52
+
53
+ > 💡 **See examples in the [`demo/`](demo) folder!**
54
+
55
+ ---
56
+
57
+ ## 📖 How to Use
58
+
59
+ ### Step 1: Export Your ChatGPT Data
60
+
61
+ 1. Sign in at [chatgpt.com](https://chatgpt.com)
62
+ 2. Navigate to: **Profile Name** (bottom left) → **Settings** → **Data controls** → **Export**
63
+ 3. Click **Confirm export**
64
+ 4. Wait for the email from OpenAI, then download the `.zip` file
65
+
66
+ ---
67
+
68
+ ### Step 2: Install Convoviz
69
+
70
+ <details open>
71
+ <summary><strong>🚀 Quick Install (Recommended)</strong></summary>
72
+
73
+ One command installs everything you need — [uv](https://github.com/astral-sh/uv) (a fast Python package manager) and convoviz with graphs and word clouds.
74
+
75
+ **Linux / macOS:**
76
+
77
+ ```bash
78
+ curl -fsSL https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.sh | bash
79
+ ```
80
+
81
+ **Windows (PowerShell):**
82
+
83
+ ```powershell
84
+ irm https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.ps1 | iex
85
+ ```
86
+
87
+ </details>
88
+
89
+ <details>
90
+ <summary><strong>📦 Alternative: Install with pip</strong></summary>
91
+
92
+ If you prefer using `pip` directly:
93
+
94
+ ```bash
95
+ # Create a virtual environment (keeps your system Python clean)
96
+ python3 -m venv .venv
97
+
98
+ # Activate the virtual environment
99
+ source .venv/bin/activate # On Windows: .venv\Scripts\activate
100
+
101
+ # Install convoviz with visualization extras
102
+ pip install "convoviz[viz]"
103
+ ```
104
+
105
+ </details>
106
+
107
+ ---
108
+
109
+ ### Step 3: Run Convoviz
110
+
111
+ The simplest way is to run the command and follow the interactive prompts:
112
+
113
+ ```bash
114
+ convoviz
115
+ ```
116
+
117
+ Or, provide arguments directly to skip the prompts:
118
+
119
+ ```bash
120
+ convoviz --input path/to/your/export.zip --output path/to/output/folder
121
+ ```
122
+
123
+ <details>
124
+ <summary><strong>⚙️ Command Line Options</strong></summary>
125
+
126
+ #### Selective Output
127
+
128
+ By default, all outputs (Markdown, graphs, word clouds) are generated. Use `--outputs` to pick specific ones:
129
+
130
+ ```bash
131
+ convoviz --input export.zip --outputs markdown --outputs graphs
132
+ ```
133
+
134
+ Available options: `markdown`, `graphs`, `wordclouds`
135
+
136
+ > In interactive mode, you'll be prompted to choose which outputs to generate.
137
+
138
+ #### Other Useful Flags
139
+
140
+ | Flag | Description |
141
+ |------|-------------|
142
+ | `--zip` / `-z` | Alias for `--input` (for convenience) |
143
+ | `--no-interactive` | Force non-interactive mode |
144
+ | `--flat` | Put all Markdown files in a single folder (instead of organizing by date) |
145
+ | `--verbose` / `-v` | Enable detailed logging (use `-vv` for debug logs) |
146
+ | `--log-file PATH` | Specify a custom log file location |
147
+
148
+ For a complete list of options:
149
+
150
+ ```bash
151
+ convoviz --help
152
+ ```
153
+
154
+ </details>
155
+
156
+ ---
157
+
158
+ ### Step 4: Check the Output 🎉
159
+
160
+ After running the script, head to your output folder to see:
161
+ - 📝 Neatly formatted Markdown files
162
+ - 📊 Visualizations and graphs
163
+
164
+ ![wordcloud example](https://raw.githubusercontent.com/mohamed-chs/convoviz/main/demo/wordcloud-example.png)
165
+
166
+ ---
167
+
168
+ ## 💌 Share Your Feedback!
169
+
170
+ I hope you find this tool useful. I'm continuously looking to improve on this, but I need your help for that.
171
+
172
+ Whether you're a tech wizard or you're new to all this, I'd love to hear about your journey with the tool. Found a quirk? Have a suggestion? Or just want to send some good vibes? I'm all ears!
173
+
174
+ 👉 **[Open an Issue](https://github.com/mohamed-chs/convoviz/issues)**
175
+
176
+ And if you've had a great experience, consider giving the project a ⭐ **star**! It keeps me motivated and helps others discover it!
177
+
178
+ ---
179
+
180
+ ## 📝 Notes
181
+
182
+ <details>
183
+ <summary><strong>About This Project</strong></summary>
184
+
185
+ This is just a small thing I coded to help me see my convos in beautiful markdown. It was originally built with [Obsidian](https://obsidian.md/) (my go-to note-taking app) in mind, but the default output is standard Markdown.
186
+
187
+ I wasn't a fan of the clunky, and sometimes paid, browser extensions.
188
+
189
+ It was also a great opportunity to learn more about Python and type annotations. I had mypy, pyright, and ruff all on strict mode, 'twas fun.
190
+
191
+ </details>
192
+
193
+ <details>
194
+ <summary><strong>Using as a Library</strong></summary>
195
+
196
+ It should also work as a library, so you can import and use the models and functions. I need to add more documentation for that though. Feel free to reach out if you need help.
197
+
198
+ </details>
199
+
200
+ <details>
201
+ <summary><strong>Offline / Reproducible Runs</strong></summary>
202
+
203
+ Word clouds use NLTK stopwords. If you're offline and NLTK data isn't installed yet, pre-download it:
204
+
205
+ ```bash
206
+ python -c "import nltk; nltk.download('stopwords')"
207
+ ```
208
+
209
+ </details>
210
+
211
+ <details>
212
+ <summary><strong>Bookmarklet (Experimental)</strong></summary>
213
+
214
+ There's also a JavaScript bookmarklet flow under `js/` for exporting additional conversation data outside the official ZIP export. This is experimental.
215
+
216
+ </details>
@@ -0,0 +1,191 @@
1
+ <p align="center">
2
+ <h1 align="center">Convoviz 📊</h1>
3
+ <p align="center"><strong>Visualize your entire ChatGPT data</strong></p>
4
+ <p align="center">
5
+ Convert your ChatGPT history into well-formatted Markdown files.<br>
6
+ Visualize your data with word clouds 🔡☁️ and usage graphs 📈.
7
+ </p>
8
+ </p>
9
+
10
+ <p align="center">
11
+ <a href="https://pypi.org/project/convoviz/"><img src="https://img.shields.io/pypi/v/convoviz?style=for-the-badge&logo=python&logoColor=white" alt="PyPI Version"></a>
12
+ <a href="https://github.com/mohamed-chs/convoviz/blob/main/LICENSE"><img src="https://img.shields.io/pypi/l/convoviz?style=for-the-badge" alt="License"></a>
13
+ <a href="https://pepy.tech/projects/convoviz"><img src="https://img.shields.io/pepy/dt/convoviz?style=for-the-badge" alt="Downloads"></a>
14
+ <a href="https://github.com/mohamed-chs/convoviz/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/mohamed-chs/convoviz/ci.yml?style=for-the-badge&logo=github&label=CI" alt="CI Status"></a>
15
+ </p>
16
+
17
+ ---
18
+
19
+ ## ✨ Features
20
+
21
+ | Feature | Description |
22
+ |---------|-------------|
23
+ | 📝 **Markdown Export** | Clean, well-formatted Markdown with optional YAML headers |
24
+ | 🖼️ **Inline Images** | Media attachments rendered directly in your Markdown files |
25
+ | ☁️ **Word Clouds** | Visual breakdowns of your most-used words and phrases |
26
+ | 📈 **Usage Graphs** | Bar plots and charts showing your conversation patterns |
27
+
28
+ > 💡 **See examples in the [`demo/`](demo) folder!**
29
+
30
+ ---
31
+
32
+ ## 📖 How to Use
33
+
34
+ ### Step 1: Export Your ChatGPT Data
35
+
36
+ 1. Sign in at [chatgpt.com](https://chatgpt.com)
37
+ 2. Navigate to: **Profile Name** (bottom left) → **Settings** → **Data controls** → **Export**
38
+ 3. Click **Confirm export**
39
+ 4. Wait for the email from OpenAI, then download the `.zip` file
40
+
41
+ ---
42
+
43
+ ### Step 2: Install Convoviz
44
+
45
+ <details open>
46
+ <summary><strong>🚀 Quick Install (Recommended)</strong></summary>
47
+
48
+ One command installs everything you need — [uv](https://github.com/astral-sh/uv) (a fast Python package manager) and convoviz with graphs and word clouds.
49
+
50
+ **Linux / macOS:**
51
+
52
+ ```bash
53
+ curl -fsSL https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.sh | bash
54
+ ```
55
+
56
+ **Windows (PowerShell):**
57
+
58
+ ```powershell
59
+ irm https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.ps1 | iex
60
+ ```
61
+
62
+ </details>
63
+
64
+ <details>
65
+ <summary><strong>📦 Alternative: Install with pip</strong></summary>
66
+
67
+ If you prefer using `pip` directly:
68
+
69
+ ```bash
70
+ # Create a virtual environment (keeps your system Python clean)
71
+ python3 -m venv .venv
72
+
73
+ # Activate the virtual environment
74
+ source .venv/bin/activate # On Windows: .venv\Scripts\activate
75
+
76
+ # Install convoviz with visualization extras
77
+ pip install "convoviz[viz]"
78
+ ```
79
+
80
+ </details>
81
+
82
+ ---
83
+
84
+ ### Step 3: Run Convoviz
85
+
86
+ The simplest way is to run the command and follow the interactive prompts:
87
+
88
+ ```bash
89
+ convoviz
90
+ ```
91
+
92
+ Or, provide arguments directly to skip the prompts:
93
+
94
+ ```bash
95
+ convoviz --input path/to/your/export.zip --output path/to/output/folder
96
+ ```
97
+
98
+ <details>
99
+ <summary><strong>⚙️ Command Line Options</strong></summary>
100
+
101
+ #### Selective Output
102
+
103
+ By default, all outputs (Markdown, graphs, word clouds) are generated. Use `--outputs` to pick specific ones:
104
+
105
+ ```bash
106
+ convoviz --input export.zip --outputs markdown --outputs graphs
107
+ ```
108
+
109
+ Available options: `markdown`, `graphs`, `wordclouds`
110
+
111
+ > In interactive mode, you'll be prompted to choose which outputs to generate.
112
+
113
+ #### Other Useful Flags
114
+
115
+ | Flag | Description |
116
+ |------|-------------|
117
+ | `--zip` / `-z` | Alias for `--input` (for convenience) |
118
+ | `--no-interactive` | Force non-interactive mode |
119
+ | `--flat` | Put all Markdown files in a single folder (instead of organizing by date) |
120
+ | `--verbose` / `-v` | Enable detailed logging (use `-vv` for debug logs) |
121
+ | `--log-file PATH` | Specify a custom log file location |
122
+
123
+ For a complete list of options:
124
+
125
+ ```bash
126
+ convoviz --help
127
+ ```
128
+
129
+ </details>
130
+
131
+ ---
132
+
133
+ ### Step 4: Check the Output 🎉
134
+
135
+ After running the script, head to your output folder to see:
136
+ - 📝 Neatly formatted Markdown files
137
+ - 📊 Visualizations and graphs
138
+
139
+ ![wordcloud example](https://raw.githubusercontent.com/mohamed-chs/convoviz/main/demo/wordcloud-example.png)
140
+
141
+ ---
142
+
143
+ ## 💌 Share Your Feedback!
144
+
145
+ I hope you find this tool useful. I'm continuously looking to improve on this, but I need your help for that.
146
+
147
+ Whether you're a tech wizard or you're new to all this, I'd love to hear about your journey with the tool. Found a quirk? Have a suggestion? Or just want to send some good vibes? I'm all ears!
148
+
149
+ 👉 **[Open an Issue](https://github.com/mohamed-chs/convoviz/issues)**
150
+
151
+ And if you've had a great experience, consider giving the project a ⭐ **star**! It keeps me motivated and helps others discover it!
152
+
153
+ ---
154
+
155
+ ## 📝 Notes
156
+
157
+ <details>
158
+ <summary><strong>About This Project</strong></summary>
159
+
160
+ This is just a small thing I coded to help me see my convos in beautiful markdown. It was originally built with [Obsidian](https://obsidian.md/) (my go-to note-taking app) in mind, but the default output is standard Markdown.
161
+
162
+ I wasn't a fan of the clunky, and sometimes paid, browser extensions.
163
+
164
+ It was also a great opportunity to learn more about Python and type annotations. I had mypy, pyright, and ruff all on strict mode, 'twas fun.
165
+
166
+ </details>
167
+
168
+ <details>
169
+ <summary><strong>Using as a Library</strong></summary>
170
+
171
+ It should also work as a library, so you can import and use the models and functions. I need to add more documentation for that though. Feel free to reach out if you need help.
172
+
173
+ </details>
174
+
175
+ <details>
176
+ <summary><strong>Offline / Reproducible Runs</strong></summary>
177
+
178
+ Word clouds use NLTK stopwords. If you're offline and NLTK data isn't installed yet, pre-download it:
179
+
180
+ ```bash
181
+ python -c "import nltk; nltk.download('stopwords')"
182
+ ```
183
+
184
+ </details>
185
+
186
+ <details>
187
+ <summary><strong>Bookmarklet (Experimental)</strong></summary>
188
+
189
+ There's also a JavaScript bookmarklet flow under `js/` for exporting additional conversation data outside the official ZIP export. This is experimental.
190
+
191
+ </details>
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "convoviz"
3
- version = "0.4.0"
3
+ version = "0.4.2"
4
4
  description = "Get analytics and visualizations on your ChatGPT data!"
5
5
  license = "MIT"
6
6
  keywords = [
convoviz-0.4.0/PKG-INFO DELETED
@@ -1,146 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: convoviz
3
- Version: 0.4.0
4
- Summary: Get analytics and visualizations on your ChatGPT data!
5
- Keywords: markdown,chatgpt,openai,visualization,analytics,json,export,data-analysis,obsidian
6
- Author: Mohamed Cheikh Sidiya
7
- Author-email: Mohamed Cheikh Sidiya <mohamedcheikhsidiya77@gmail.com>
8
- License-Expression: MIT
9
- Classifier: License :: OSI Approved :: MIT License
10
- Classifier: Programming Language :: Python :: 3
11
- Classifier: Programming Language :: Python :: 3.12
12
- Requires-Dist: orjson>=3.11.5
13
- Requires-Dist: pydantic>=2.12.5
14
- Requires-Dist: pydantic-settings>=2.7.0
15
- Requires-Dist: questionary>=2.1.1
16
- Requires-Dist: rich>=14.2.0
17
- Requires-Dist: tqdm>=4.67.1
18
- Requires-Dist: typer>=0.21.0
19
- Requires-Dist: nltk>=3.9.2 ; extra == 'viz'
20
- Requires-Dist: wordcloud>=1.9.5 ; extra == 'viz'
21
- Requires-Python: >=3.12
22
- Project-URL: Repository, https://github.com/mohamed-chs/convoviz
23
- Provides-Extra: viz
24
- Description-Content-Type: text/markdown
25
-
26
- # Convoviz 📊: Visualize your entire ChatGPT data
27
-
28
- Convert your ChatGPT history into well-formatted Markdown files. Visualize your data with word clouds 🔡☁️ and usage graphs 📈.
29
-
30
- ## Features
31
-
32
- - **YAML Headers**: Optional and included by default.
33
- - **Inline Images**: Media attachments rendered directly in Markdown.
34
- - **Data Visualizations**: Word clouds, graphs, and more.
35
-
36
- See examples [here](demo).
37
-
38
- ## How to Use 📖
39
-
40
- ### 1. Export Your ChatGPT Data 🗂
41
-
42
- - Sign in at [chatgpt.com](https://chatgpt.com).
43
- - Navigate: Profile Name (bottom left) -> **Settings** -> **Data controls** -> **Export** -> **Confirm export**.
44
- - Await email from OpenAI and download the `.zip` file.
45
-
46
- ### 2. Install the tool 🛠
47
-
48
- One command to install everything:
49
-
50
- **Linux / macOS:**
51
-
52
- ```bash
53
- curl -fsSL https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.sh | bash
54
- ```
55
-
56
- **Windows (PowerShell):**
57
-
58
- ```powershell
59
- irm https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.ps1 | iex
60
- ```
61
-
62
- This installs [uv](https://github.com/astral-sh/uv) (if needed) and convoviz with graphs and word clouds.
63
-
64
- #### Alternative: pip
65
-
66
- ```bash
67
- python3 -m venv .venv
68
- source .venv/bin/activate # Windows: .venv\Scripts\activate
69
- pip install "convoviz[viz]"
70
- ```
71
-
72
- ### 3. Run the tool 🏃‍♂️
73
-
74
- Simply run the command and follow the prompts:
75
-
76
- ```bash
77
- convoviz
78
- ```
79
-
80
- #### Command Line Arguments
81
-
82
- You can provide arguments directly to skip the prompts:
83
-
84
- ```bash
85
- convoviz --input path/to/your/export.zip --output path/to/output/folder
86
- ```
87
-
88
- ##### Selective Output
89
-
90
- By default, all outputs are generated. Use `--outputs` to pick specific ones:
91
-
92
- ```bash
93
- convoviz --input export.zip --outputs markdown --outputs graphs
94
- ```
95
-
96
- Options: `markdown`, `graphs`, `wordclouds`. In interactive mode, you'll be prompted.
97
-
98
- ##### Other Notes
99
-
100
- - `--zip` / `-z` is kept as an alias for `--input` for convenience.
101
- - You can force non-interactive mode with `--no-interactive`.
102
- - Use `--flat` to put all Markdown files in a single folder instead of organizing by date.
103
- - Use `--verbose` or `-v` for detailed logging (use `-vv` for debug logs).
104
- - Use `--log-file` to specify a custom log file (logs default to a temporary file if not specified).
105
-
106
- For more options, run:
107
-
108
- ```bash
109
- convoviz --help
110
- ```
111
-
112
- ### 4. Check the Output 🎉
113
-
114
- And that's it! After running the script, head over to the output folder to see your neatly formatted Markdown files and visualizations.
115
-
116
- ![wordcloud example](demo/wordcloud-example.png)
117
-
118
- ## Share Your Feedback! 💌
119
-
120
- I hope you find this tool useful. I'm continuously looking to improve on this, but I need your help for that.
121
-
122
- Whether you're a tech wizard or you're new to all this, I'd love to hear about your journey with the tool. Found a quirk? Have a suggestion? Or just want to send some good vibes? I'm all ears! (see [issues](https://github.com/mohamed-chs/convoviz/issues))
123
-
124
- And if you've had a great experience, consider giving the project a star ⭐. It keeps me motivated and helps others discover it!
125
-
126
- ## Notes
127
-
128
- This is just a small thing I coded to help me see my convos in beautiful markdown. It was originally built with [Obsidian](https://obsidian.md/) (my go-to note-taking app) in mind, but the default output is standard Markdown.
129
-
130
- I wasn't a fan of the clunky, and sometimes paid, browser extensions.
131
-
132
- It was also a great opportunity to learn more about Python and type annotations. I had mypy, pyright, and ruff all on strict mode, 'twas fun.
133
-
134
- It should(?) also work as library, so you can import and use the models and functions. I need to add more documentation for that tho. Feel free to reach out if you need help.
135
-
136
- ### Offline / reproducible runs
137
-
138
- Word clouds use NLTK stopwords. If you're offline and NLTK data isn't installed yet, pre-download it:
139
-
140
- ```bash
141
- python -c "import nltk; nltk.download('stopwords')"
142
- ```
143
-
144
- ### Bookmarklet
145
-
146
- There's also a JavaScript bookmarklet flow under `js/` (experimental) for exporting additional conversation data outside the official ZIP export.
convoviz-0.4.0/README.md DELETED
@@ -1,121 +0,0 @@
1
- # Convoviz 📊: Visualize your entire ChatGPT data
2
-
3
- Convert your ChatGPT history into well-formatted Markdown files. Visualize your data with word clouds 🔡☁️ and usage graphs 📈.
4
-
5
- ## Features
6
-
7
- - **YAML Headers**: Optional and included by default.
8
- - **Inline Images**: Media attachments rendered directly in Markdown.
9
- - **Data Visualizations**: Word clouds, graphs, and more.
10
-
11
- See examples [here](demo).
12
-
13
- ## How to Use 📖
14
-
15
- ### 1. Export Your ChatGPT Data 🗂
16
-
17
- - Sign in at [chatgpt.com](https://chatgpt.com).
18
- - Navigate: Profile Name (bottom left) -> **Settings** -> **Data controls** -> **Export** -> **Confirm export**.
19
- - Await email from OpenAI and download the `.zip` file.
20
-
21
- ### 2. Install the tool 🛠
22
-
23
- One command to install everything:
24
-
25
- **Linux / macOS:**
26
-
27
- ```bash
28
- curl -fsSL https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.sh | bash
29
- ```
30
-
31
- **Windows (PowerShell):**
32
-
33
- ```powershell
34
- irm https://raw.githubusercontent.com/mohamed-chs/convoviz/main/install.ps1 | iex
35
- ```
36
-
37
- This installs [uv](https://github.com/astral-sh/uv) (if needed) and convoviz with graphs and word clouds.
38
-
39
- #### Alternative: pip
40
-
41
- ```bash
42
- python3 -m venv .venv
43
- source .venv/bin/activate # Windows: .venv\Scripts\activate
44
- pip install "convoviz[viz]"
45
- ```
46
-
47
- ### 3. Run the tool 🏃‍♂️
48
-
49
- Simply run the command and follow the prompts:
50
-
51
- ```bash
52
- convoviz
53
- ```
54
-
55
- #### Command Line Arguments
56
-
57
- You can provide arguments directly to skip the prompts:
58
-
59
- ```bash
60
- convoviz --input path/to/your/export.zip --output path/to/output/folder
61
- ```
62
-
63
- ##### Selective Output
64
-
65
- By default, all outputs are generated. Use `--outputs` to pick specific ones:
66
-
67
- ```bash
68
- convoviz --input export.zip --outputs markdown --outputs graphs
69
- ```
70
-
71
- Options: `markdown`, `graphs`, `wordclouds`. In interactive mode, you'll be prompted.
72
-
73
- ##### Other Notes
74
-
75
- - `--zip` / `-z` is kept as an alias for `--input` for convenience.
76
- - You can force non-interactive mode with `--no-interactive`.
77
- - Use `--flat` to put all Markdown files in a single folder instead of organizing by date.
78
- - Use `--verbose` or `-v` for detailed logging (use `-vv` for debug logs).
79
- - Use `--log-file` to specify a custom log file (logs default to a temporary file if not specified).
80
-
81
- For more options, run:
82
-
83
- ```bash
84
- convoviz --help
85
- ```
86
-
87
- ### 4. Check the Output 🎉
88
-
89
- And that's it! After running the script, head over to the output folder to see your neatly formatted Markdown files and visualizations.
90
-
91
- ![wordcloud example](demo/wordcloud-example.png)
92
-
93
- ## Share Your Feedback! 💌
94
-
95
- I hope you find this tool useful. I'm continuously looking to improve on this, but I need your help for that.
96
-
97
- Whether you're a tech wizard or you're new to all this, I'd love to hear about your journey with the tool. Found a quirk? Have a suggestion? Or just want to send some good vibes? I'm all ears! (see [issues](https://github.com/mohamed-chs/convoviz/issues))
98
-
99
- And if you've had a great experience, consider giving the project a star ⭐. It keeps me motivated and helps others discover it!
100
-
101
- ## Notes
102
-
103
- This is just a small thing I coded to help me see my convos in beautiful markdown. It was originally built with [Obsidian](https://obsidian.md/) (my go-to note-taking app) in mind, but the default output is standard Markdown.
104
-
105
- I wasn't a fan of the clunky, and sometimes paid, browser extensions.
106
-
107
- It was also a great opportunity to learn more about Python and type annotations. I had mypy, pyright, and ruff all on strict mode, 'twas fun.
108
-
109
- It should(?) also work as library, so you can import and use the models and functions. I need to add more documentation for that tho. Feel free to reach out if you need help.
110
-
111
- ### Offline / reproducible runs
112
-
113
- Word clouds use NLTK stopwords. If you're offline and NLTK data isn't installed yet, pre-download it:
114
-
115
- ```bash
116
- python -c "import nltk; nltk.download('stopwords')"
117
- ```
118
-
119
- ### Bookmarklet
120
-
121
- There's also a JavaScript bookmarklet flow under `js/` (experimental) for exporting additional conversation data outside the official ZIP export.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes