Bibliography management with Django.
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 | ✔️ | ✔️ | ✔️ | ✔️ | ||
| Python 3.4 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | |
| Python 3.5 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| Python 3.6 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Please note that for older Python and/or Django versions, you can still use the 0.3 release.
Click on the screenshot below to browse the sandbox deployed on Heroku:
Nota bene: to test references importation from PMIDs or DOIs, you will need to login with these credentials:
login: rosalind
password: idiscovereddnastructurefirst
The easiest way to go is to use pip:
$ pip install -U django-tailordev-biblioAdd td_biblio to your INSTALLED_APPS in django settings:
# foo_project/settings.py
INSTALLED_APPS = (
# other apps…
'td_biblio',
)Add td_biblio urls your project url patterns:
# foo_project/urls.py
urlpatterns = [
# other urls…
url(r'^bibliography/', include('td_biblio.urls', namespace='td_biblio')),
]And finally migrate your database from your project root path:
$ python manage.py migrate td_biblioIn 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:
<html>
<head>
<title>Publication list</title>
</head>
<body>
{% block content %}{% endblock content %} {% block javascripts %}{% endblock
javascripts %}
</body>
</html>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:
td_biblio/templates/_layouts/base.html
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 manage.py bibtex_import my_bibliography.bibAlternatively, you can browse to the /import/ view with a superuser account
to fetch references from their DOIs or PMIDs.
If you intend to work on the code, clone this repository and install all dependencies in a virtual environment via:
$ make bootstrapAnd then start the development server via:
$ make devYou can run the tests with via:
$ make testTo start playing with an Heroku instance, we suppose you have:
- an Heroku account;
- a functional SSH key imported for this account;
- installed the
herokuclient.
# 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/manage.py migrate$ python setup.py sdist bdist_wheel
$ twine upload dist/*django-tailordev-biblio is released under the MIT License. See the bundled
LICENSE file for details.