Skip to main content

TailorDev Biblio Bibliography management with Django.

Project description

# Django TailorDev Biblio

Bibliography management with Django.

[![Coverage Status](](

## Compatibility

Since the `1.0.0` release, we have added full support for recent python and
Django releases:

| | Django 1.8 | Django 1.9 | Django 1.10 | Django 1.11 | Django 2.0 | Django 2.1 |
| ---------- | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ |
| Python 2.7 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | |
| Python 3.4 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | |
| Python 3.5 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |
| Python 3.6 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: |

Please note that for older Python and/or Django versions, you can still use the `0.3` release.

## Sandbox

Click on the screenshot below to browse the sandbox deployed on Heroku:

![Django TailorDev Biblio Screenshot](docs/images/preview.png "Checkout the demo!")

_Nota bene:_ to test [references
importation]( from PMIDs or DOIs,
you will need to login with these credentials:

login: rosalind
password: idiscovereddnastructurefirst

## Installation

### Install `td_biblio`

The easiest way to go is to use pip:

$ pip install -U django-tailordev-biblio

### Configure `td_biblio`

Add `td_biblio` to your `INSTALLED_APPS` in django settings:

# foo_project/

# other apps…

Add `td_biblio` urls your project url patterns:

# foo_project/

urlpatterns = [
# other urls…
url(r'^bibliography/', include('td_biblio.urls', namespace='td_biblio')),

And finally migrate your database from your project root path:

$ python migrate td_biblio

### Add a base template

In order to use `td_biblio` templates, you will need to create a base template
to inherit from. This base template should be visible as `_layouts/base.html`
and contains at least the following blocks:

<title>Publication list</title>
{% block content %}{% endblock content %} {% block javascripts %}{% endblock
javascripts %}

As you might have guessed, the `content` block is the base block where we render
the bibliography list and item details, while the `javascripts` block contains
eponym front-end dependencies. You will find an example base layout template at:

## Import bibliography

Once `td_biblio` is installed and configured, you may want to import your
references stored in a BibTeX file. Hopefully, there is a command for that:

$ python bibtex_import my_bibliography.bib

Alternatively, you can browse to the `/import/` view with a superuser account
to fetch references from their DOIs or PMIDs.

## Hack

### Development installation

If you intend to work on the code, clone this repository and install all
dependencies in a virtual environment via:

$ make bootstrap

And then start the development server via:

$ make dev

### Running the Tests

You can run the tests with via:

$ make test

### Deploy to Heroku

To start playing with an Heroku instance, we suppose you have:

- an Heroku account;
- a functional SSH key imported for this account;
- installed the [`heroku` client](

# Log in to heroku
$ heroku login

# Configure current repository as a registered heroku app
$ heroku git:remote -a tailordev-biblio

# Push your code
$ git push heroku master

# Perform database migrations
$ heroku run python sandbox/ migrate

### Upload a new release to PyPI

$ python sdist bdist_wheel
$ twine upload dist/*

## License

`django-tailordev-biblio` is released under the MIT License. See the bundled
LICENSE file for details.

Download files

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

Source Distribution

django-tailordev-biblio-2.0.0.tar.gz (223.5 kB view hashes)

Uploaded source

Built Distribution

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 NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page