Giter Club home page Giter Club logo

dabeplech's Introduction

dabeplech

Python package codecov Documentation Status Downloads

Light library to perform requests to different bioinformatics APIs. This library also contains models description (thanks to pydantic). It allows automatic documentation of the responses from API that are initially not described.

Please have a look at our Documentation for more information.

List of supported services

List of supported services is listed in the documentation.

Install

Latest published version:

pip install dabeplech

Basic usage

from dabeplech import KEGGAPI

api = KEGGAPI()
kegg_entry = api.get("K00135")
print(kegg_entry.names)
# OUTPUT: ['gabD']

Test endpoints

Status of different endpoints can be test with api_status.py script from tests directory.

If the test works, you will get some green output. Do not be surprised if you get ERROR in green, it means it is expected.


Development

Packaging and organization of the library is done using Poetry.

In brief after installing poetry, from the repository directory, just run:

poetry install

Run all quality checks and tests locally

You can run all quality checks and unit tests locally.

To list all available commands:

poetry run inv --list
# for instance
poetry run inv quality.all  # Run all quality tests

Contributions

All contributions are welcome. Please have a look at our Contribution Guide.

dabeplech's People

Contributors

hmenager avatar khillion avatar

Stargazers

 avatar

Watchers

 avatar  avatar

dabeplech's Issues

Create base API for parser based connector

The work done for KEGGAPI should be refactored and abstracted to extract a common part to build API connecter based on parser.

Also update documentation in this issue for contribution to add an API connector.

Parsers for KEGG ko and pathway lists

To allow testing that the parser for KEGG ko and pathways are handling all different cases, it would be better to be able to retrieve all different entries to loop through them see if no error is returned while parsing each entries individually.

Therefore, it is necessary to write parsers for list of ko and pathways to retrieve better formatted response from KEGG api.

Improve model and get more information from NCBI taxonomy page

Current model for NCBITaxonomy is not correct. current_item should disappear and parameters given directly in the model.

Check also what useful information could be obtained and scrapped from NCBI taxonomy web pages.

Ideas:

  • references with pubmed IDs

Explore other operations (FIND and LINK) for KEGG API

Description

At the moment, KEGG API only deal with GET(.get() method) and LIST (.get_all() method). It would be nice to investigate the other operations:

  • FIND
  • LINK

It would also be the moment to replace .get_all() method by .list() method which makes more sense in term on naming.

Let's investigate this using kegg orthology examples

Links

Additional information

  • Does the API needs credentials and authentification? No
  • Does the API return JSON format? No -> need parser

Contribution guide for new API connector

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.