Thanks for your interest in contributing to django-nuxt.
Repository: https://github.com/jrutila/django-nuxt
- Report bugs and unexpected behavior
- Improve documentation and examples
- Add tests for edge cases and regressions
- Submit bug fixes and small enhancements
- Python 3.10+ (3.12 recommended)
uv(Python package and environment manager)- Node.js 20+ (for Nuxt example app)
- npm, pnpm, yarn, or bun (examples below use
pnpm)
- Fork and clone the repository.
- Create a virtual environment with
uv. - Install development dependencies with
uv.
Example commands:
uv sync
uv sync --group devYou can run Python commands through uv run ... without manually activating the virtual environment.
From the repository root:
uv run runtests.pyPlease run tests before opening a pull request.
This repository currently contains the example/basic project.
This is the main way to develop and verify integration behavior.
- Install Python dependencies for the example with
uv:
cd example/basic
uv sync- Install and run Nuxt app in one terminal:
cd example/basic/ui
pnpm install
pnpm dev- Run Django in another terminal:
cd example/basic
uv run manage.py migrate
uv run manage.py runserver- Create a superuser:
uv run manage.py createsuperuser- Open http://127.0.0.1:8000/.
Nuxt runs on port 3000, and Django on port 8000.
Use this to test production-like static output serving from Django.
- Generate Nuxt static files:
cd example/basic/ui
pnpm install
pnpm run generate- In
example/basic/basic/settings.py, ensure this is configured:
DJANGO_NUXT_SERVER_RUNNING = False
- Run Django:
cd example/basic
uv run python manage.py migrate
uv run python manage.py runserverDo steps 1 and 2 from Example 2.
- Run Django:
Set DEBUG=False in example/basic/basic/settings.py.
cd example/basic
uv run python manage.py collectstaticCheck that there is a _nuxt folder in the staticfiles directory (without the /static/ prefix).
Add NuxtStaticUrls() to the urlpatterns in example/basic/basic/urls.py as we are serving the Nuxt files with runserver next. In production, you should not use NuxtStaticUrls() but configure the /_nuxt/ static file serving independently.
uv run python manage.py runserver- Open http://127.0.0.1:8000/.
- Keep PRs focused and small when possible
- Add or update tests for behavior changes
- Update docs when behavior or API changes
- Use clear commit messages describing the intent
- Include a short test plan in PR description
When reporting a bug, include:
- Operating system and Python version
django-nuxtversion- Minimal reproducible example
- Expected behavior vs actual behavior
- Relevant logs or traceback
Please be respectful and constructive in all project interactions.