Skip to main content

A flexible client for FHIR servers supporting the SMART on FHIR protocol

Project description

SMART FHIR Client
=================

This is _fhirclient_, a flexible Python client for [FHIR][] servers supporting the [SMART on FHIR][smart] protocol.
The client is compatible with Python 2.7, possibly earlier, and Python 3.

Client versioning is not identical to FHIR versioning.
The `master` branch is usually on the latest version, possibly on bugfix releases thereof.

Version | FHIR |  
-----------|---------------|---
**1.0** | `1.0.1` | (DSTU 2)
**0.5** | `0.5.0.5149` | (DSTU 2 Ballot, May 2015)
**0.0.4** | `0.0.82.2943` | (DSTU 1)
**0.0.3** | `0.0.82.2943` | (DSTU 1)
**0.0.2** | `0.0.82.2943` | (DSTU 1)


Installation
------------

pip install fhirclient


Documentation
-------------

Technical documentation is available at [docs.smarthealthit.org/client-py/][docs].

#### Flask App

Take a look at [`flask_app.py`][flask_app] to see how you can use the client in a simple (Flask) app.
This app starts a webserver, listening on [_localhost:8000_](http://localhost:8000), and prompts you to login to our sandbox server and select a patient.
It then goes on to retrieve the selected patient's demographics and med prescriptions and lists them in a simple HTML page.

The Flask demo app has separate requirements.
Clone the _client-py_ repository, then best create a virtual environment and install the needed packages like so:

git clone https://github.com/smart-on-fhir/client-py.git
cd client-py
virtualenv -p python3 env
. env/bin/activate
pip install -r requirements_flask_app.txt
python flask_app.py


Building Distribution
---------------------

pip install -r requirements.txt
python setup.py sdist
python setup.py bdist_wheel


### Incrementing the lib version

bumpversion patch
bumpversion minor
bumpversion major


Docs Generation
---------------

Docs are generated with [Doxygen][] and [doxypypy][].
You will need to install doxypypy the old-fashioned way, checking out the repo and issuing `python setup.py install`.
Then you can just run Doxygen, configuration is stored in the `Doxyfile`.

Running Doxygen will put the generated documentation into `docs`, the HTML files into `docs/html`.
Those files make up the content of the `gh-pages` branch.
I usually perform a second checkout of the _gh-pages_ branch and copy the html files over, with:

doxygen
rsync -a docs/html/ ../client-py-web/


[fhir]: http://www.hl7.org/implement/standards/fhir/
[smart]: http://docs.smarthealthit.org
[docs]: https://smart-on-fhir.github.io/client-py
[flask_app]: https://github.com/smart-on-fhir/client-py/blob/master/flask_app.py
[doxygen]: http://www.stack.nl/~dimitri/doxygen
[doxypypy]: https://github.com/Feneric/doxypypy


Credits
=======

“fhirclient” is written and maintained by the SMART Platforms Team / Boston Children's Hospital.


Contributors
------------

The following wonderful people contributed directly or indirectly to this project:

- Josh Mandel <https://github.com/jmandel>
- Nikolai Schwertner <https://github.com/nschwertner>
- Pascal Pfiffner <https://github.com/p2>

Please add yourself here alphabetically when you submit your first pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fhirclient-1.0.2.tar.gz (219.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fhirclient-1.0.2-py2.py3-none-any.whl (354.4 kB view details)

Uploaded Python 2Python 3

File details

Details for the file fhirclient-1.0.2.tar.gz.

File metadata

  • Download URL: fhirclient-1.0.2.tar.gz
  • Upload date:
  • Size: 219.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for fhirclient-1.0.2.tar.gz
Algorithm Hash digest
SHA256 b8def323018a4c9e90184def69cc0c7ce67bda990838313be6c877bf42379983
MD5 73078bdb5e75e9c9116481ee6028f201
BLAKE2b-256 f3dbc124433311d03b1afb26776681d3f4189c9002ade21fc20f9910a3902e79

See more details on using hashes here.

File details

Details for the file fhirclient-1.0.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for fhirclient-1.0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 2e312f2f103f979a335f74b8802eed2c4d52f39781dadff3d9aebdbc9f532f51
MD5 350cb203cc59e0d66064344dd6c95a96
BLAKE2b-256 ede53ab0d781090b863a1e9c0641dd45ff42fff706f31bef2458bdb12c3f5e4d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page