You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+39-43Lines changed: 39 additions & 43 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,20 +8,12 @@
8
8
[BioThings.io](https://biothings.io/) is a platform that provides a network of high-performance biomedical APIs and tools for building FAIR (Findable, Accessible, Interoperable, and Reusable) data services. The platform includes several key components:
9
9
10
10
-**Core BioThings APIs**:
11
-
- MyGene.info - Gene Annotation Service
12
-
- MyVariant.info - Variant Annotation Service
13
-
- MyChem.info - Chemical and Drug Annotation Service
14
-
- MyDisease.info - Disease Annotation Service
11
+
-[MyGene.info](https://mygene.info/) - Gene Annotation Service
12
+
-[MyVariant.info](https://myvariant.info/) - Variant Annotation Service
13
+
-[MyChem.info](https://mychem.info/) - Chemical and Drug Annotation Service
14
+
-[MyDisease.info](http://mydisease.info/) - Disease Annotation Service
15
15
- Taxonomy API - For querying taxonomic information
16
16
17
-
-**Development Tools**:
18
-
- BioThings SDK - A Python-based toolkit for building high-performance data APIs
19
-
- BioThings Studio - A pre-configured environment for building and administering BioThings APIs
20
-
21
-
-**Discovery and Integration Tools**:
22
-
- SmartAPI - A registry for semantically annotated APIs
23
-
- BioThings Explorer - A tool for exploring biological data through linked API services
24
-
25
17
This typed client library is built on top of the BioThings ecosystem, providing type-safe access to these services through Python.
26
18
27
19
## Project Description
@@ -30,11 +22,10 @@ A strongly-typed Python wrapper around the [BioThings Client](https://github.com
30
22
31
23
## Features
32
24
33
-
-**Type Safety**: Strongly typed models for all BioThings data using Pydantic
34
-
-**IDE Support**: Full autocompletion and type checking in modern IDEs
25
+
-**Type Safety & Validation**: Leverages Pydantic models for runtime data validation and type checking.
26
+
-**Enhanced IDE Support**: Full autocompletion and static analysis in modern IDEs
35
27
-**Synchronous & Asynchronous**: Support for both sync and async operations
36
28
-**Helper Methods**: Additional utility methods for common operations
37
-
-**Validation**: Runtime type checking and data validation
38
29
-**Compatibility**: Maintains full compatibility with the original BioThings client
39
30
40
31
## Installation
@@ -52,28 +43,34 @@ cd biothings-typed-client
52
43
pip install biothings-typed-client
53
44
```
54
45
55
-
### Using UV (Recommended)
46
+
#### Setting Up for Development
47
+
48
+
If you want to contribute to this repository:
56
49
57
-
[UV](https://github.com/astral-sh/uv) is a fast Python package installer and resolver, written in Rust. It's designed to be a drop-in replacement for pip and pip-tools.
3. To create a virtual environment and install dependencies:
70
-
```bash
71
-
uv venv
72
-
source .venv/bin/activate # On Unix/macOS
73
-
# or
74
-
.venv\Scripts\activate # On Windows
75
-
uv install biothings-typed-client
76
-
```
69
+
4. Install all dependencies, including development tools:
70
+
```bash
71
+
uv sync --all-extras
72
+
```
73
+
This command reads the `pyproject.toml` file and installs the package in editable mode along with all its dependencies and optional dependencies (like those needed for testing and development).
77
74
78
75
## Quick Start
79
76
@@ -203,16 +200,15 @@ client = ChemClient()
203
200
204
201
# Get a single chemical
205
202
chem = client.getchem("ZRALSGWEFCBTJO-UHFFFAOYSA-N") # Using InChI key
Copy file name to clipboardExpand all lines: pyproject.toml
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
[project]
2
2
name = "biothings-typed-client"
3
-
version = "0.0.2"
4
-
description = "Add your description here"
3
+
version = "0.0.3"
4
+
description = "A strongly-typed Python wrapper around the BioThings Client library, providing type safety and better IDE support through Python's type hints and Pydantic models."
5
5
readme = "README.md"
6
6
authors = [
7
7
{ name = "antonkulaga", email = "antonkulaga@gmail.com" }
0 commit comments