Skip to main content

Isomorphic UI Development with Decorator pattern for Django with:

  • nextjs out of the box experience for frontend development,

  • rendering of nextjs pages with context in Django with NextJS template engine.

For fun & profit

Run the example project

Run this commands as non root:

git clone https://git.yourlabs.org/oss/djnext
cd djnext
pip install --user --editable .[dev]
yarn install
djnext djnext  # required for yarn dev to run
yarn dev  # run localhost:3000
djnext dev  # run localhost:8000

Choose NextJS page template in Django

Example project lives in src/djnext_example, see src/djnext_example/artist/urls.py:

CreateView.as_view(
    model=Artist,
    fields=['name'],
    success_url=reverse_lazy('artist_list'),
    template_name='create.js',
)

The template backend you added will make a request to the nextjs server you have on port 3000 with yarn dev.

Djnext command

Run your manage.py djnext or yourproject djnext if your project has an entrypoint.

This will watch static/pages directories of all apps in INSTALLED_APPS, and build the pages/ directory, so that yarn dev will find it.

On port 8000 we don’t yet have auto frontend code reload, but you have it on port 3000 with djnext command running at the same time.

Install in your project

Add to ‘djnext’ to INSTALLED_APPS, add dict(BACKEND='djnext.Backend') to TEMPLATES.

With LOVE from POITOU CHARENTE

Credit

Thanks to frontend engineer Thomas Binetruy for participating

Release files for djnext 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for djnext 0.0.2
File Size Uploaded
djnext-0.0.2.tar.gz 4.7 kB Details

Release files / djnext-0.0.2.tar.gz

Download URL djnext-0.0.2.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
616b65104e2b45c65a051a2b3c34278b77628d037cdff047969bf1455564177c
BLAKE2b-256 checksum
How to use checksums
d7d264ad44a76cffcaf669760ccd945f9d0a20be43253c3d3fd042801072f448
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.2 This release

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page