Introduction ------------ What's BioThings? ***************** We use "**BioThings**" to refer to objects of any biomedical entity-type represented in the biological knowledge space, such as genes, genetic variants, drugs, chemicals, diseases, etc. BioThings SDK ************* SDK represents "Software Development Kit". BioThings SDK provides a `Python-based `_ toolkit to build high-performance data APIs (or web services) from a single data source or multiple data sources. It has the particular focus on building data APIs for biomedical-related entities, a.k.a "*BioThings*", though it's not necessarily limited to the biomedical scope. For any given "*BioThings*" type, BioThings SDK helps developers to aggregate annotations from multiple data sources, and expose them as a clean and high-performance web API. The BioThings SDK can be roughly divided into two main components: data hub (or just "hub") component and web component. The hub component allows developers to automate the process of monitoring, parsing and uploading your data source to an `Elasticsearch `_ backend. From here, the web component, built on the high-concurrency `Tornado Web Server `_ , allows you to easily setup a live high-performance API. The API endpoints expose simple-to-use yet powerful query features using `Elasticsearch's full-text query capabilities and query language `_. BioThings API ************* We also use "*BioThings API*" (or *BioThings APIs*) to refer to an API (or a collection of APIs) built with BioThings SDK. For example, both our popular `MyGene.Info `_ and `MyVariant.Info `_ APIs are built and maintained using this BioThings SDK. BioThings Studio **************** *BioThings Studio* is a buildin, pre-configured environment used to build and administer BioThings API. At its core is the *Hub*, a backend service responsible for maintaining data up-to-date, producing data releases and update API frontends. Installation ------------ You can install the latest stable BioThings SDK release with pip from `PyPI `_, like: :: pip install biothings You can install the latest development version of BioThings SDK directly from our github repository like: :: pip install git+https://github.com/biothings/biothings.api.git#egg=biothings Alternatively, you can download the source code, or clone the `BioThings SDK repository `_ and run: :: python setup.py install Quick Start ----------- We recommend to follow `this tutorial `_ to develop your first BioThings API in our pre-configured `BioThings Studio `_ development environment. .. toctree:: :hidden: :caption: Products tutorial/studio tutorial/standalone tutorial/hub_tutorial tutorial/web tutorial/datatransform .. toctree:: :hidden: :caption: Documentation apidoc/biothings.web apidoc/biothings.tests apidoc/biothings.utils apidoc/biothings.hub apidoc/biothings.cli