foambryo


Namefoambryo JSON
Version 0.3.5 PyPI version JSON
download
home_pagehttps://github.com/sacha-ichbiah/foambryo
SummaryTension inference for 3D cell assemblies
upload_time2024-06-10 08:25:14
maintainerNone
docs_urlNone
authorSacha Ichbiah
requires_python>=3.6
licenseCC BY-NC-SA 4.0
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # foambryo

[![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa]
[![DOI](https://zenodo.org/badge/625305276.svg)](https://zenodo.org/badge/latestdoi/625305276)

**foambryo** is a python package developed to infer relative surface tensions and cell pressures from the 3D geometry of cells in foam-like clusters, such as early-embryos, tissues or organoids.

<img src="https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/Window_76_cells.png" alt="drawing" width="650"/>

It was developed by Sacha Ichbiah during his PhD in [Turlier Lab](https://www.turlierlab.com), and is maintained by Matthieu Perez and Hervé Turlier. For support, please open an issue.
If you use our library in your work please cite the [paper](https://doi.org/10.1101/2023.04.12.536641).

If you are interested in inferring tensions in 2D, please look at the [foambryo2D](https://github.com/VirtualEmbryo/foambryo2D) package instead. 

### Biological and biophysical context 

Multicellular structures encountered in the field of developmental biology have various shapes and arrangements that reflectes their physiological functions. Mechanics is at the heart of the development of these structures, yet tools to investigate the forces at play in 3D remain scarse. Inferring forces or stresses from cell shapes only allows one to reveal the fundamental mechanics shaping cells from microscopy imaging. This software makes the hypothesis that cells in many early embryos, tissues and cell aggregates are mechanically akin to heterogeneous foam-like structures (see [Physical model](README.md/#Physical-model)).

### Prerequisites 

**foambryo** requires Python >3.6 with pip.

**foambryo** requires the prior segmentation of images of multicellular aggregates into cell segmentation masks using one's favorite algorithm (watershed algorithm, [cellpose](https://www.cellpose.org) or any preferred one). The quality of the segmentation and the size of the original image will directly affect the precision of the inference results.

#### Dependencies

All required dependencies are installed by pip automatically.

**foambryo** relies on a companion tool [**delaunay-watershed**](https://github.com/VirtualEmbryo/delaunay-watershed) that we developed to construct precise multimaterial meshes from instance segmentations. From these multimaterial meshes, one can efficiently and robustly measure junction angles and interface curvatures to invert the **Young-Dupré** and **Laplace** laws and infer the **surface tensions** $\gamma_{ij}$ and **cell pressures** $p_i$ underlying the mechanical equilibrium of foam-like cell aggregates.

The viewer is based on [**Polyscope**](https://github.com/nmwsharp/polyscope), a C++/Python viewer designed to visualize 3-dimensional geometry, in particular meshes.

#### Operating systems

This package should work on any OS and was tested on the following macOS and Linux systems:

macOS: BigSur (11.7.9) and Ventura (13.5)

Linux: Ubuntu 16.04, CentOS 7 and Manjaro 22.0


### Installation

We recommend to install **foambryo** from the PyPI repository directly.
```shell
pip install foambryo
```
To use the foambryo viewers, use instead:

```shell
pip install "foambryo[viewing]"
```
For developers, you may also install **foambryo** by cloning the source code and installing from the local directory.

First, make sure you have the LFS git extension, as there are some large data alongside the source code, necessary to run the example notebook.
```shell
git clone https://github.com/VirtualEmbryo/foambryo.git
pip install pathtopackage/foambryo
```

### Quick start example 



Load an instance segmentation, reconstruct its multimaterial mesh, infer and visualize the forces with Polyscope

```py
from foambryo import dcel_mesh_from_segmentation_mask
from foambryo.viewing import plot_force_inference, plot_tension_inference

# Load the labels
import skimage.io as io
segmentation = io.imread("Segmentation.tif")

# Reconstruct a multimaterial mesh from segmentation
mesh = dcel_mesh_from_segmentation_mask(segmentation_mask)  # DCEL mesh ready for force inference !

# Infer and view the forces
plot_force_inference(mesh)

#Or just the tensions
plot_tension_inference(mesh)
```

See [the introductory notebook](Examples/Example.ipynb) for further details.

### Physical model
We consider a tissue constituted of cells i. 

<img src="https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/Equilibrium.png" alt="drawing" width=“175”/>

They minimize, under conservation of volume an energy 
$\mathcal{E}=\underset{ij}{\sum}\gamma_{ij}$.

The two main laws underlying mechanical force balance are: 
- **Young-Dupré Law:** $\gamma_{ij} + \gamma_{ik} + \gamma_{jk} = 0$.
- **Laplace Law:** $p_j - p_i = 2 \gamma_{ij} H_{ij}$ where $H_{ij}$ is the mean curvature of the interface between the cell i and j.


---

### API and Documentation

See [the introductory notebook](Examples/Example.ipynb) to understand the API.

#### Infer tensions and pressures

The notebook shows how to create a mesh and how foambryo compute forces on the mesh.

We recall that the forces are relative, this is why you need to give the mean tension and base pressure.

- `base_pressure`: reference exterior pressure. All pressures inside cells are computed relative to this one.
- `mean_tension`: as one only infers ratios between tensions, it has to be given. You can set it to 1 for instance.

Foambryo has several strategies to compute tensions:
- `YoungDupre` (Young-Dupré with cosines only),
- `ProjectionYoungDupre` (Young-Dupré with cosines and sines),
- `Equilibrium`,
- `Cotan` (cotangent formula, see [Yamamoto et al. 2023](https://doi.org/10.1101/2023.03.07.531437)),
- `InvCotan` (inverse of the cotangent formula),
- `Lami` ([Lami's theorem](https://en.wikipedia.org/wiki/Lami%27s_theorem)),
- `InvLami` (inverse of the Lami's relation),
- `LogLami` (logarithm of the Lami's relation),
- `Variational` (variational formulation, see our [paper](https://doi.org/10.1101/2023.04.12.536641)).

And also to compute pressures:
- `Variational` (variational formulation, see our [paper](https://doi.org/10.1101/2023.04.12.536641)), 
- `Laplace` (Laplace's law)
- `WeightedLaplace` (Laplace's law with weight on curvature by area).

---
### Biological examples
#### *P. mammillata* early embryo
*Phallusia mammillata* is a solitary marine tunicate of the ascidian class known for its stereotypical development. As the embryo develops freely, without any constraint, we can do a full force inference and infer its tensions, pressures and stresses.
We use segmentation data from [Guignard, L., Fiúza, U. et al.](https://www.science.org/doi/10.1126/science.aar5663)

<img src="https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/Ascidians.png" alt="drawing" width="900"/>


#### *C. elegans* early embryo
*Caenorhabditis elegans* is a widely studied model organism, with one of the most reproducible development. The embryo of this earthworm is developing within a shell. As the shell shape and mechanics is unknown, the pressures are not accessible. However we can still use Young-Dupré relationships to retrieve surface tensions at cell membranes. Here we use segmentation data from [Cao, J., Guan, G., Ho, V.W.S. et al.](https://doi.org/10.1038/s41467-020-19863-x)

<img src="https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/CElegans.png" alt="drawing" width="900"/>

#### Plotting scalar quantities on surface meshes

Gaussian and mean curvatures can be plotted on our meshes, and may be useful to study the geometric properties of interfaces between cells. 
We can also plot the vertex area and volume derivatives, that appear in our variational formulas, the difference between the two principal curvatures and the residual of the best sphere-fit that can be used to detect non-spherical constant-mean-curvature surfaces.
They can be obtained by putting the option `scalar_quantities = True` when viewing the forces. 

<img src="https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/scalar_quantities.png" alt="drawing" width="900"/>

- Gaussian Curvature is computed using the angle defect formula.
- Mean Curvature is computed using the cotan formula.

To see the code of each of these use-cases, please load the associated jupyter notebooks in the folder Notebooks

---


### Credits, contact, citations
If you use this tool, please cite the associated preprint: 
Do not hesitate to contact Matthieu Perez and Hervé Turlier for practical questions and applications. 
We hope that **foambryo** could help biologists and physicists to shed light on the mechanical aspects of early development.



```
@article {Ichbiah2023.04.12.536641,
	author = {Sacha Ichbiah and Fabrice Delbary and Alex McDougall and R{\'e}mi Dumollard and Herv{\'e} Turlier},
	title = {Embryo mechanics cartography: inference of 3D force atlases from fluorescence microscopy},
	elocation-id = {2023.04.12.536641},
	year = {2023},
	doi = {10.1101/2023.04.12.536641},
	publisher = {Cold Spring Harbor Laboratory},
	abstract = {The morphogenesis of tissues and embryos results from a tight interplay between gene expression, biochemical signaling and mechanics. Although sequencing methods allow the generation of cell-resolved spatio-temporal maps of gene expression in developing tissues, creating similar maps of cell mechanics in 3D has remained a real challenge. Exploiting the foam-like geometry of cells in embryos, we propose a robust end-to-end computational method to infer spatiotemporal atlases of cellular forces from fluorescence microscopy images of cell membranes. Our method generates precise 3D meshes of cell geometry and successively predicts relative cell surface tensions and pressures in the tissue. We validate it with 3D active foam simulations, study its noise sensitivity, and prove its biological relevance in mouse, ascidian and C. elegans embryos. 3D inference allows us to recover mechanical features identified previously, but also predicts new ones, unveiling potential new insights on the spatiotemporal regulation of cell mechanics in early embryos. Our code is freely available and paves the way for unraveling the unknown mechanochemical feedbacks that control embryo and tissue morphogenesis.Competing Interest StatementThe authors have declared no competing interest.},
	URL = {https://www.biorxiv.org/content/early/2023/04/13/2023.04.12.536641},
	eprint = {https://www.biorxiv.org/content/early/2023/04/13/2023.04.12.536641.full.pdf},
	journal = {bioRxiv}
}
```

### License

This work is licensed under a
[Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa].

[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]

[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/
[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png
[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/sacha-ichbiah/foambryo",
    "name": "foambryo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": null,
    "author": "Sacha Ichbiah",
    "author_email": "sacha.ichbiah@college-de-france.fr",
    "download_url": "https://files.pythonhosted.org/packages/bd/73/95e2df353b768100c6e8136219e2c856b3e826a659fb8e87d399f13c6f57/foambryo-0.3.5.tar.gz",
    "platform": null,
    "description": "# foambryo\n\n[![CC BY-NC-SA 4.0][cc-by-nc-sa-shield]][cc-by-nc-sa]\n[![DOI](https://zenodo.org/badge/625305276.svg)](https://zenodo.org/badge/latestdoi/625305276)\n\n**foambryo** is a python package developed to infer relative surface tensions and cell pressures from the 3D geometry of cells in foam-like clusters, such as early-embryos, tissues or organoids.\n\n<img src=\"https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/Window_76_cells.png\" alt=\"drawing\" width=\"650\"/>\n\nIt was developed by Sacha Ichbiah during his PhD in [Turlier Lab](https://www.turlierlab.com), and is maintained by Matthieu Perez and Herv\u00e9 Turlier. For support, please open an issue.\nIf you use our library in your work please cite the [paper](https://doi.org/10.1101/2023.04.12.536641).\n\nIf you are interested in inferring tensions in 2D, please look at the [foambryo2D](https://github.com/VirtualEmbryo/foambryo2D) package instead. \n\n### Biological and biophysical context \n\nMulticellular structures encountered in the field of developmental biology have various shapes and arrangements that reflectes their physiological functions. Mechanics is at the heart of the development of these structures, yet tools to investigate the forces at play in 3D remain scarse. Inferring forces or stresses from cell shapes only allows one to reveal the fundamental mechanics shaping cells from microscopy imaging. This software makes the hypothesis that cells in many early embryos, tissues and cell aggregates are mechanically akin to heterogeneous foam-like structures (see [Physical model](README.md/#Physical-model)).\n\n### Prerequisites \n\n**foambryo** requires Python >3.6 with pip.\n\n**foambryo** requires the prior segmentation of images of multicellular aggregates into cell segmentation masks using one's favorite algorithm (watershed algorithm, [cellpose](https://www.cellpose.org) or any preferred one). The quality of the segmentation and the size of the original image will directly affect the precision of the inference results.\n\n#### Dependencies\n\nAll required dependencies are installed by pip automatically.\n\n**foambryo** relies on a companion tool [**delaunay-watershed**](https://github.com/VirtualEmbryo/delaunay-watershed) that we developed to construct precise multimaterial meshes from instance segmentations. From these multimaterial meshes, one can efficiently and robustly measure junction angles and interface curvatures to invert the **Young-Dupr\u00e9** and **Laplace** laws and infer the **surface tensions** $\\gamma_{ij}$ and **cell pressures** $p_i$ underlying the mechanical equilibrium of foam-like cell aggregates.\n\nThe viewer is based on [**Polyscope**](https://github.com/nmwsharp/polyscope), a C++/Python viewer designed to visualize 3-dimensional geometry, in particular meshes.\n\n#### Operating systems\n\nThis package should work on any OS and was tested on the following macOS and Linux systems:\n\nmacOS: BigSur (11.7.9) and Ventura (13.5)\n\nLinux: Ubuntu 16.04, CentOS 7 and Manjaro 22.0\n\n\n### Installation\n\nWe recommend to install **foambryo** from the PyPI repository directly.\n```shell\npip install foambryo\n```\nTo use the foambryo viewers, use instead:\n\n```shell\npip install \"foambryo[viewing]\"\n```\nFor developers, you may also install **foambryo** by cloning the source code and installing from the local directory.\n\nFirst, make sure you have the LFS git extension, as there are some large data alongside the source code, necessary to run the example notebook.\n```shell\ngit clone https://github.com/VirtualEmbryo/foambryo.git\npip install pathtopackage/foambryo\n```\n\n### Quick start example \n\n\n\nLoad an instance segmentation, reconstruct its multimaterial mesh, infer and visualize the forces with Polyscope\n\n```py\nfrom foambryo import dcel_mesh_from_segmentation_mask\nfrom foambryo.viewing import plot_force_inference, plot_tension_inference\n\n# Load the labels\nimport skimage.io as io\nsegmentation = io.imread(\"Segmentation.tif\")\n\n# Reconstruct a multimaterial mesh from segmentation\nmesh = dcel_mesh_from_segmentation_mask(segmentation_mask)  # DCEL mesh ready for force inference !\n\n# Infer and view the forces\nplot_force_inference(mesh)\n\n#Or just the tensions\nplot_tension_inference(mesh)\n```\n\nSee [the introductory notebook](Examples/Example.ipynb) for further details.\n\n### Physical model\nWe consider a tissue constituted of cells i. \n\n<img src=\"https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/Equilibrium.png\" alt=\"drawing\" width=\u201c175\u201d/>\n\nThey minimize, under conservation of volume an energy \n$\\mathcal{E}=\\underset{ij}{\\sum}\\gamma_{ij}$.\n\nThe two main laws underlying mechanical force balance are: \n- **Young-Dupr\u00e9 Law:** $\\gamma_{ij} + \\gamma_{ik} + \\gamma_{jk} = 0$.\n- **Laplace Law:** $p_j - p_i = 2 \\gamma_{ij} H_{ij}$ where $H_{ij}$ is the mean curvature of the interface between the cell i and j.\n\n\n---\n\n### API and Documentation\n\nSee [the introductory notebook](Examples/Example.ipynb) to understand the API.\n\n#### Infer tensions and pressures\n\nThe notebook shows how to create a mesh and how foambryo compute forces on the mesh.\n\nWe recall that the forces are relative, this is why you need to give the mean tension and base pressure.\n\n- `base_pressure`: reference exterior pressure. All pressures inside cells are computed relative to this one.\n- `mean_tension`: as one only infers ratios between tensions, it has to be given. You can set it to 1 for instance.\n\nFoambryo has several strategies to compute tensions:\n- `YoungDupre` (Young-Dupr\u00e9 with cosines only),\n- `ProjectionYoungDupre` (Young-Dupr\u00e9 with cosines and sines),\n- `Equilibrium`,\n- `Cotan` (cotangent formula, see [Yamamoto et al. 2023](https://doi.org/10.1101/2023.03.07.531437)),\n- `InvCotan` (inverse of the cotangent formula),\n- `Lami` ([Lami's theorem](https://en.wikipedia.org/wiki/Lami%27s_theorem)),\n- `InvLami` (inverse of the Lami's relation),\n- `LogLami` (logarithm of the Lami's relation),\n- `Variational` (variational formulation, see our [paper](https://doi.org/10.1101/2023.04.12.536641)).\n\nAnd also to compute pressures:\n- `Variational` (variational formulation, see our [paper](https://doi.org/10.1101/2023.04.12.536641)), \n- `Laplace` (Laplace's law)\n- `WeightedLaplace` (Laplace's law with weight on curvature by area).\n\n---\n### Biological examples\n#### *P. mammillata* early embryo\n*Phallusia mammillata* is a solitary marine tunicate of the ascidian class known for its stereotypical development. As the embryo develops freely, without any constraint, we can do a full force inference and infer its tensions, pressures and stresses.\nWe use segmentation data from [Guignard, L., Fi\u00faza, U. et al.](https://www.science.org/doi/10.1126/science.aar5663)\n\n<img src=\"https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/Ascidians.png\" alt=\"drawing\" width=\"900\"/>\n\n\n#### *C. elegans* early embryo\n*Caenorhabditis elegans* is a widely studied model organism, with one of the most reproducible development. The embryo of this earthworm is developing within a shell. As the shell shape and mechanics is unknown, the pressures are not accessible. However we can still use Young-Dupr\u00e9 relationships to retrieve surface tensions at cell membranes. Here we use segmentation data from [Cao, J., Guan, G., Ho, V.W.S. et al.](https://doi.org/10.1038/s41467-020-19863-x)\n\n<img src=\"https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/CElegans.png\" alt=\"drawing\" width=\"900\"/>\n\n#### Plotting scalar quantities on surface meshes\n\nGaussian and mean curvatures can be plotted on our meshes, and may be useful to study the geometric properties of interfaces between cells. \nWe can also plot the vertex area and volume derivatives, that appear in our variational formulas, the difference between the two principal curvatures and the residual of the best sphere-fit that can be used to detect non-spherical constant-mean-curvature surfaces.\nThey can be obtained by putting the option `scalar_quantities = True` when viewing the forces. \n\n<img src=\"https://raw.githubusercontent.com/VirtualEmbryo/foambryo/main/Images_github_repo/scalar_quantities.png\" alt=\"drawing\" width=\"900\"/>\n\n- Gaussian Curvature is computed using the angle defect formula.\n- Mean Curvature is computed using the cotan formula.\n\nTo see the code of each of these use-cases, please load the associated jupyter notebooks in the folder Notebooks\n\n---\n\n\n### Credits, contact, citations\nIf you use this tool, please cite the associated preprint: \nDo not hesitate to contact Matthieu Perez and Herv\u00e9 Turlier for practical questions and applications. \nWe hope that **foambryo** could help biologists and physicists to shed light on the mechanical aspects of early development.\n\n\n\n```\n@article {Ichbiah2023.04.12.536641,\n\tauthor = {Sacha Ichbiah and Fabrice Delbary and Alex McDougall and R{\\'e}mi Dumollard and Herv{\\'e} Turlier},\n\ttitle = {Embryo mechanics cartography: inference of 3D force atlases from fluorescence microscopy},\n\telocation-id = {2023.04.12.536641},\n\tyear = {2023},\n\tdoi = {10.1101/2023.04.12.536641},\n\tpublisher = {Cold Spring Harbor Laboratory},\n\tabstract = {The morphogenesis of tissues and embryos results from a tight interplay between gene expression, biochemical signaling and mechanics. Although sequencing methods allow the generation of cell-resolved spatio-temporal maps of gene expression in developing tissues, creating similar maps of cell mechanics in 3D has remained a real challenge. Exploiting the foam-like geometry of cells in embryos, we propose a robust end-to-end computational method to infer spatiotemporal atlases of cellular forces from fluorescence microscopy images of cell membranes. Our method generates precise 3D meshes of cell geometry and successively predicts relative cell surface tensions and pressures in the tissue. We validate it with 3D active foam simulations, study its noise sensitivity, and prove its biological relevance in mouse, ascidian and C. elegans embryos. 3D inference allows us to recover mechanical features identified previously, but also predicts new ones, unveiling potential new insights on the spatiotemporal regulation of cell mechanics in early embryos. Our code is freely available and paves the way for unraveling the unknown mechanochemical feedbacks that control embryo and tissue morphogenesis.Competing Interest StatementThe authors have declared no competing interest.},\n\tURL = {https://www.biorxiv.org/content/early/2023/04/13/2023.04.12.536641},\n\teprint = {https://www.biorxiv.org/content/early/2023/04/13/2023.04.12.536641.full.pdf},\n\tjournal = {bioRxiv}\n}\n```\n\n### License\n\nThis work is licensed under a\n[Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License][cc-by-nc-sa].\n\n[![CC BY-NC-SA 4.0][cc-by-nc-sa-image]][cc-by-nc-sa]\n\n[cc-by-nc-sa]: http://creativecommons.org/licenses/by-nc-sa/4.0/\n[cc-by-nc-sa-image]: https://licensebuttons.net/l/by-nc-sa/4.0/88x31.png\n[cc-by-nc-sa-shield]: https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg\n",
    "bugtrack_url": null,
    "license": "CC BY-NC-SA 4.0",
    "summary": "Tension inference for 3D cell assemblies",
    "version": "0.3.5",
    "project_urls": {
        "Homepage": "https://github.com/sacha-ichbiah/foambryo",
        "Team website": "https://www.turlierlab.com/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "afe4d4532edca7a1d7d315bca74c746d7ad5e6b25302619530475d640c787b8f",
                "md5": "f93e66a47a48430da6a86087edf3fe23",
                "sha256": "26ed02af28bf4994cc2d8ef3d49c94f13161f844d8402b00872e94347e8d52ac"
            },
            "downloads": -1,
            "filename": "foambryo-0.3.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f93e66a47a48430da6a86087edf3fe23",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 42880,
            "upload_time": "2024-06-10T08:25:12",
            "upload_time_iso_8601": "2024-06-10T08:25:12.884361Z",
            "url": "https://files.pythonhosted.org/packages/af/e4/d4532edca7a1d7d315bca74c746d7ad5e6b25302619530475d640c787b8f/foambryo-0.3.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bd7395e2df353b768100c6e8136219e2c856b3e826a659fb8e87d399f13c6f57",
                "md5": "7019874bd3831c807b686fa2e8248cd8",
                "sha256": "a47bccd3efa8a6c9bf12ee329abf3674ff083354eaba12a25e4dea906faaac32"
            },
            "downloads": -1,
            "filename": "foambryo-0.3.5.tar.gz",
            "has_sig": false,
            "md5_digest": "7019874bd3831c807b686fa2e8248cd8",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 43655,
            "upload_time": "2024-06-10T08:25:14",
            "upload_time_iso_8601": "2024-06-10T08:25:14.656354Z",
            "url": "https://files.pythonhosted.org/packages/bd/73/95e2df353b768100c6e8136219e2c856b3e826a659fb8e87d399f13c6f57/foambryo-0.3.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-10 08:25:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sacha-ichbiah",
    "github_project": "foambryo",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "foambryo"
}
        
Elapsed time: 0.44679s