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-biblio
Add 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_biblio
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:
<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.bib
Alternatively, 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 bootstrap
And then start the development server via:
$ make dev
You can run the tests with via:
$ make test
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/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.