Django-Vitae is a CV generator that can be used with the Django web framework.
Many academics have trouble keeping CVs up to date. Django-Vitae was created to streamline this process. Django-Vitae allows users to make highly customizable curricula vitae for use on their websites. The application provides models for common entries on curricula vitae such as education, employment, publications, teaching, and service. Django-Vitae eliminates many of the repetitive tasks related to producing curricula vitae. The included templates provide a complete CV "out of the box", but allows researchers who might be interested in customizing the format using Django templating language.
Django-Vitae uses semantic versioning. Though it aims to provide a complete suite to create a CV, the project does not been tested extensively (and you can contribute to that effort!) and pieces might still throw errors. See notes below for quirks and errors in usage that must be resolved.
Django-Vitae is developed and tested in Python 3. It depends on several external packages (other than Django):
- Markdown (makes pretty HTML with simple text entries)
- citeproc-py (creates citations formatted according to desired CSL styles [not yet implemented])
- citeproc-py-styles (adds library of CSL styles)
- reportlab (creates PDFs on-the-fly)
From PyPI:
pip install django-vitae
For the latest development version:
git clone https://github.com/mikebader/django-vitae cd django-vitae python setup.py install
If you are new to Django, you may want to visit the Getting Started guide in the documentation.
Incomplete documentation can be found in the docs/
directory and at http://djangocv.readthedocs.io/.
To test, you need to install the following packages:
- Nose & django-nose (used for testing suite)
- Coverage (used to document testing coverage)
pip install nose pip install django-nose pip install coverage
A test suite can be found in the tests/
directory. With Nose and Coverage installed, you may run the tests with runtests.py
. From the django-vitae
root directory:
./runtests.py
To test only a single model, you may use the flag --attr=<model_name>
for the model (not implemented for all models). For example, to test books, you would use:
./runtests.py --attr=book
At present, you will have the best luck editing model instances in the admin
interface. You should be able to edit some models in interface implemented in the default templates, but many do not work or are not fully implemented.