Skip to main content

Portable Python package to connect with the Tribe web service at the University of Pennsylvania

Project description

Tribe client is a portable Python app to connect your bioinformatics server or tool to the ‘Tribe’ web service (located at https://tribe.greenelab.com).

This package allows web servers created using Django to connect directly to Tribe and make use of its resources. Users of the client web server or tool can access their Tribe resources via Tribe OAuth2 authentication.

Download and Install

Tribe-client is registered as “tribe-client” in PyPI and is pip installable:

pip install tribe-client

Quick Start with Django

  1. Add tribe_client to your INSTALLED_APPS setting:
INSTALLED_APPS = (
    ...
    'tribe_client',
)

2. Include the tribe-client URLconf in your project’s URLconf (usually urls.py):

from django.conf.urls import url, patterns, include

urlpatterns = patterns('',
  ...
  (r'^tribe_client/', include('tribe_client.urls')),
)

3. Register your client server at https://tribe.greenelab.com/oauth2/applications/. Make sure to:

  1. Be logged-in using your Tribe account
  2. Select “Confidential” under Client type and
  3. Select “Authorization Code” under Authorization grant type
  4. Enter your client server’s address plus “/tribe_client/get_token” in the Redirect uris box. If your client server’s current address is http://example.com, enter http://example.com/tribe_client/get_token

Note

Currently, Tribe supports the following Authorization grant types:

  • Authorization code
  • Resource owner password-based

and does not support the following:

  • Implicit
  • Client credentials

4. Write down the Client ID in the TRIBE_ID setting and the Client secret in the TRIBE_SECRET setting in your settings.py file like so:

TRIBE_ID = '*****Tribe Client ID*****'
TRIBE_SECRET = '*****Tribe Client Secret*****'

5. The TRIBE_REDIRECT_URI setting should be the address of the client server plus “/tribe_client/get_token”.

TRIBE_REDIRECT_URI = 'http://example.com/tribe_client/get_token'

6. Make sure that you have a base.html template that the tribe_client templates can extend

7. Make a link that takes the user to the /tribe_client url of your website for them to log in using Tribe

A Closer Look

Under the hood, tribe-client has functions that:

1) Get an access token (via the OAuth2 protocol) that allows users to access and create resources in Tribe.

2) Retrieves public and private collections (and their versions) and displays them on the client server using views and templates included in the package.

3) Allows users to create new collections and versions remotely, from the client server.

Project details


Download files

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

Files for tribe-client, version 1.1.3
Filename, size File type Python version Upload date Hashes
Filename, size tribe-client-1.1.3.tar.gz (10.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page