cnotebook 1.1.0__py3-none-any.whl → 1.2.0__py3-none-any.whl

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.
cnotebook/__init__.py CHANGED
@@ -8,7 +8,7 @@ from .render import render_molecule_grid
8
8
  # to avoid confusion
9
9
  from cnotebook.pandas_ext import register_pandas_formatters as _register_pandas_formatters
10
10
 
11
- __version__ = '1.1.0'
11
+ __version__ = '1.2.0'
12
12
 
13
13
  ###########################################
14
14
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cnotebook
3
- Version: 1.1.0
3
+ Version: 1.2.0
4
4
  Summary: Chemistry visualization in Jupyter Notebooks with the OpenEye Toolkits
5
5
  Author-email: Scott Arne Johnson <scott.arne.johnson@gmail.com>
6
6
  License-Expression: MIT
@@ -23,12 +23,12 @@ Classifier: Programming Language :: Python :: 3 :: Only
23
23
  Classifier: Operating System :: OS Independent
24
24
  Classifier: Framework :: Jupyter
25
25
  Classifier: Framework :: IPython
26
- Requires-Python: >=3.10
26
+ Requires-Python: >=3.11
27
27
  Description-Content-Type: text/markdown
28
28
  License-File: LICENSE
29
- Requires-Dist: pandas<3.0.0,>=2.0.0
29
+ Requires-Dist: pandas>=2.2.0
30
30
  Requires-Dist: oepandas>=2.0.0
31
- Requires-Dist: openeye-toolkits
31
+ Requires-Dist: openeye-toolkits>=2025.2.1
32
32
  Provides-Extra: dev
33
33
  Requires-Dist: invoke; extra == "dev"
34
34
  Requires-Dist: build; extra == "dev"
@@ -38,7 +38,12 @@ Requires-Dist: pytest; extra == "test"
38
38
  Requires-Dist: pytest-cov; extra == "test"
39
39
  Dynamic: license-file
40
40
 
41
- # CNotebook - Chemistry Visualization for Jupyter & Marimo
41
+ # CNotebook
42
+
43
+ [![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)
44
+ [![OpenEye Toolkits](https://img.shields.io/badge/OpenEye-2025.2.1+-green.svg)](https://www.eyesopen.com/toolkits)
45
+ [![Pandas 2.2+](https://img.shields.io/badge/pandas-2.2+-orange.svg)](https://pandas.pydata.org/)
46
+
42
47
 
43
48
  **Author:** Scott Arne Johnson ([scott.arne.johnson@gmail.com](mailto:scott.arne.johnson@gmail.com))
44
49
 
@@ -70,33 +75,33 @@ mol
70
75
 
71
76
  That's it! CNotebook automatically registers formatters so that OpenEye molecule objects display as chemical structures instead of cryptic text representations.
72
77
 
73
- ## 📚 Features
78
+ ## Features
74
79
 
75
- ### Automatic Rendering
80
+ ### Automatic Rendering
76
81
  - **Zero Configuration**: Just import and go - molecules automatically render as structures
77
82
  - **Multiple Formats**: Supports both Jupyter Notebooks and Marimo environments
78
83
  - **Smart Detection**: Automatically detects your notebook environment
79
84
 
80
- ### 🧪 Molecule Support
85
+ ### Molecule Support
81
86
  - **OEMol Objects**: Direct rendering of `oechem.OEMolBase` derived objects
82
87
  - **OE2DMolDisplay**: Advanced rendering with custom depiction options
83
88
  - **Pandas Integration**: Seamless rendering in DataFrames with oepandas
84
89
 
85
- ### 🎨 Visualization Options
90
+ ### Visualization Options
86
91
  - **Multiple Formats**: PNG (default) or SVG output
87
92
  - **Customizable Sizing**: Configurable width, height, and scaling
88
93
  - **Grid Layouts**: Multi-molecule grid displays
89
94
  - **Substructure Highlighting**: SMARTS pattern highlighting
90
95
  - **Molecular Alignment**: Align molecules to reference structures
91
96
 
92
- ### 📊 Pandas Integration
97
+ ### Pandas Integration
93
98
  - **DataFrame Rendering**: Automatic molecule column detection and rendering
94
99
  - **Column Highlighting**: Highlight different patterns per row
95
100
  - **Alignment Tools**: Align molecular depictions in DataFrames
96
101
  - **Fingerprint Similarity**: Visual similarity coloring
97
102
  - **Property Calculation**: Chemistry-aware DataFrame operations
98
103
 
99
- ## 🛠️ Environment Support
104
+ ## Environment Support
100
105
 
101
106
  ### Jupyter Notebooks
102
107
  CNotebook automatically integrates with Jupyter when imported:
@@ -126,7 +131,7 @@ oechem.OESmilesToMol(mol, "c1ccccc1")
126
131
  mol # Automatically renders as PNG for Marimo compatibility
127
132
  ```
128
133
 
129
- ## 📖 Advanced Usage
134
+ ## Advanced Usage
130
135
 
131
136
  ### Rendering Configuration
132
137
 
@@ -204,7 +209,7 @@ df.fingerprint_similarity("Molecule", reference_mol, inplace=True)
204
209
  df # Shows similarity coloring and Tanimoto coefficients
205
210
  ```
206
211
 
207
- ## 📁 Demo Notebooks
212
+ ## Demo Notebooks
208
213
 
209
214
  Explore comprehensive examples in the `demos/` directory:
210
215
 
@@ -228,7 +233,7 @@ Explore comprehensive examples in the `demos/` directory:
228
233
  - High-quality crisp molecular graphics
229
234
  - SVG compatibility considerations
230
235
 
231
- ## 🔧 Configuration Options
236
+ ## Configuration Options
232
237
 
233
238
  ### Global Context Settings
234
239
 
@@ -254,7 +259,7 @@ ctx.scale = 1.0 # Scaling factor
254
259
  - **Marimo**: Automatically uses PNG format for compatibility
255
260
  - **Console**: Falls back to string representations
256
261
 
257
- ## 🤝 Contributing
262
+ ## Contributing
258
263
 
259
264
  We welcome contributions! Please ensure your code:
260
265
  - Follows existing code style and conventions
@@ -262,11 +267,11 @@ We welcome contributions! Please ensure your code:
262
267
  - Works with both Jupyter and Marimo environments
263
268
  - Maintains compatibility with OpenEye Toolkits
264
269
 
265
- ## 📄 License
270
+ ## License
266
271
 
267
272
  This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
268
273
 
269
- ## 🐛 Issues & Support
274
+ ## Issues & Support
270
275
 
271
276
  For bug reports, feature requests, or general support, please open an issue on GitHub or contact the author at [scott.arne.johnson@gmail.com](mailto:scott.arne.johnson@gmail.com).
272
277
 
@@ -1,4 +1,4 @@
1
- cnotebook/__init__.py,sha256=jO2L0sjW-5r1GthZ45f8zyhVdhaGBK2hjiGD1q3way4,2702
1
+ cnotebook/__init__.py,sha256=31LjoTU4gu19fgH9g3WGG08Tqopq69mSizz-AUu5WQ8,2702
2
2
  cnotebook/align.py,sha256=u22GEHJc8QzCb9If2mjuapKPOTBEB2iu6jtUfgmm1UQ,14086
3
3
  cnotebook/context.py,sha256=MXOIIZ7PkWZ8Wi11L00ldAqsaNCBmJRc76bETelIq9w,17493
4
4
  cnotebook/helpers.py,sha256=r5-CIcmomd8vbd6ILGU6uW3sAjWZPcng82cikZ0ZDZ8,2193
@@ -6,8 +6,8 @@ cnotebook/ipython_ext.py,sha256=mu9eMQiYFEQeT8pS_xh-8Qx6N4dyn6_9u0YwlEudQXo,1989
6
6
  cnotebook/marimo_ext.py,sha256=SPvej9LsRIFz8ljujMjppkm92BWTR8xgX9SqFmkY6VA,7169
7
7
  cnotebook/pandas_ext.py,sha256=enGXKWDHOv6TK-MbA2H_KsP2IrAEViftyDvCKIjkTX8,35411
8
8
  cnotebook/render.py,sha256=S7N7hPF61tppSAo7WN0kF89pWVJWKVMiDczy7RkOltA,13025
9
- cnotebook-1.1.0.dist-info/licenses/LICENSE,sha256=HbIgeZz-pWGC7BEnYFCQ-jfD1m_BfiosF9qjgWw64GU,1080
10
- cnotebook-1.1.0.dist-info/METADATA,sha256=fuK5_QxxkcqisT5x2FPc-_WRnYPsD_6j81KMN0uW68A,8575
11
- cnotebook-1.1.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
12
- cnotebook-1.1.0.dist-info/top_level.txt,sha256=jzkieTjQwdNKfMwnoElvDDtNPkeLMjbvWbsbkSsboo8,10
13
- cnotebook-1.1.0.dist-info/RECORD,,
9
+ cnotebook-1.2.0.dist-info/licenses/LICENSE,sha256=HbIgeZz-pWGC7BEnYFCQ-jfD1m_BfiosF9qjgWw64GU,1080
10
+ cnotebook-1.2.0.dist-info/METADATA,sha256=i1vWVNcomhxVXtOAnsVk2YykR57T3EEeCvJvg91qst8,8789
11
+ cnotebook-1.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
12
+ cnotebook-1.2.0.dist-info/top_level.txt,sha256=jzkieTjQwdNKfMwnoElvDDtNPkeLMjbvWbsbkSsboo8,10
13
+ cnotebook-1.2.0.dist-info/RECORD,,