Example Project¶
You can use the following example project to get started with django-resume.
Set up the project¶
Clone the repository:
$ git clone git@github.com:ephes/django-resume.git
Set up the virtual environment:
$ cd django-resume
$ uv venv
$ uv sync
Run the example project:
$ just serve-example
This is shorthand for:
$ cd example
$ uv run python manage.py runserver
Log in via the admin interface:
Local admin (username:
user, password:password)
Visit the list of example resumes:
The example project root URL http://localhost:8000/ redirects anonymous
users to the admin login and authenticated users to the same resume list.
You can edit the example resumes either via the django admin interface or via the inline editing feature by clicking on the “Edit” button.
The example project demonstrates built-in and filesystem-based custom plugins.
Example page plugin: the Portfolio page¶
The core app also contributes a custom page – a third-party
PortfolioPage defined in example/core/resume_pages.py and discovered
automatically on startup (see Creating Page Plugins). It needs no change
to django-resume itself and no migration.
Because it sets a nav_title, its link also appears automatically in the
resume overview (“My Resumes”) next to the built-in Cover/CV links. Visit it for
any resume at /<slug>/portfolio/, for example:
As the resume owner, open /<slug>/portfolio/?edit=true to edit the sections
shown on the page (identity, about, skills, projects) inline; changes persist to
Resume.plugin_data exactly like the built-in pages. Anonymous and non-owner
visitors see the read-only page with no edit controls. The page ships plain
and headwind templates under example/core/templates/django_resume/pages/.