=========
Django.js
=========
Django.js provides tools for JavaScript development with Django.
Django.js is inspired from:
- `Miguel Araujo's verbatim snippet <https://gist.github.com/893408>`_.
- `Dimitri Gnidash's django-js-utils <https://github.com/Dimitri-Gnidash/django-js-utils>`_.
This is currently a work in progress (API wil not be stable before 1.0) so don't expect it to be perfect but please `submit an issue <https://github.com/noirbizarre/django.js/issues>`_ for any bug you find or any feature you want.
Compatibility
=============
Django.js requires Python 3.x and Django 2.x.
Installation
============
You can install Django.js with pip:
::
$ pip install django.js-ng
or with easy_install:
::
$ easy_install django.js-ng
Add ``djangojs`` to your ``settings.INSTALLED_APPS``.
Add ``djangojs.urls`` to your root ``URL_CONF``:
::
urlpatterns = patterns('',
...
url(r'^djangojs/', include('djangojs.urls')),
...
)
Documentation
=============
The documentation is hosted `on Read the Docs <http://djangojs.readthedocs.org/en/latest/>`_
Changelog
=========
Current
-------
- Nothing yet
0.8.1 (2013-10-19)
------------------
- Fixed management command with Django < 1.5 (fix `issue #23 <https://github.com/noirbizarre/django.js/issues/23>`_ thanks to Wasil Sergejczyk)
- Fixed Django CMS handling (fix `issue #25 <https://github.com/noirbizarre/django.js/issues/25>`_ thanks to Wasil Sergejczyk)
- Cache Django.js views and added ``settings.JS_CACHE_DURATION``
- Allow customizable Django.js initialization
- Allow manual reload of context and URLs
- Published Django.js on bower (thanks to Wasil Sergejczyk for the initial bower.json file)
- Do not automatically translate languages name in context
0.8.0 (2013-07-14)
------------------
- Allow features to be disabled with:
- ``settings.JS_URLS_ENABLED``
- ``settings.JS_USER_ENABLED``
- ``settings.JS_CONTEXT_ENABLED``
- Added context black and white lists (``settings.JS_CONTEXT`` and ``settings.JS_CONTEXT_EXCLUDE``)
- Allow context serialization customization by inheritance with ``settings.JS_CONTEXT_PROCESSOR``
- Do not fail on import when parsing URLs (Fix `issue #7 <https://github.com/noirbizarre/django.js/issues/7>`_ thanks to Wasil Sergejczyk)
- Treat starred non-capturing groups and starred characters as optionnals (Fix `issue #22 <https://github.com/noirbizarre/django.js/issues/22>`_)
- Upgraded to jQuery 2.0.3 (and added 1.10.2)
- Upgraded to QUnit 1.12.0
- Added ``js`` management command.
- Extracted URLs handling and context handling into their own modules
- First contrib module: ``social_auth`` (thanks to Olivier Cortès)
0.7.6 (2013-06-07)
------------------
- Reintroduce Python 2.6 support (thanks to Andy Freeland)
- Fix `issue #20 <https://github.com/noirbizarre/django.js/issues/20>`_
0.7.5 (2013-06-01)
------------------
- Handle Django 1.5+ custom user model
- Upgraded to jQuery 2.0.2 and jQuery Migrate 1.2.1
0.7.4 (2013-05-11)
------------------
- Preserve declaration order in StorageGlobber.glob() (Fix `issue #17 <https://github.com/noirbizarre/django.js/issues/17>`_)
- Fixes on localization on handling
0.7.3 (2013-04-30)
------------------
- Upgraded to jQuery 2.0.0
- Package both minified and unminified versions.
- Load minified versions (Django.js, jQuery and jQuery Migrate) when DEBUG=False
0.7.2 (2013-04-30)
------------------
- Fix `issue #16 <https://github.com/noirbizarre/django.js/issues/16>`_
- Declare package as Python 3 compatible on PyPI
0.7.1 (2013-04-25)
------------------
- Optionnaly include jQuery with ``{% django_js_init %}``.
0.7.0 (2013-04-25)
------------------
- Added RequireJS/AMD helpers and documentation
- Added Django Pipeline integration helpers and documentation
- Support unnamed URLs resolution.
- Support custom content types to be passed into the js/javascript script tag (thanks to Travis Jensen)
- Added ``coffee`` and ``coffescript`` template tags
- Python 3 compatibility
0.6.5 (2013-03-13)
------------------
- Make JsonView reusable
- Unescape regex characters in URLs
- Fix handling of 0 as parameter for Javasript reverse URLs
0.6.4 (2013-03-10)
------------------
- Support namespaces without app_name set.
0.6.3 (2013-03-08)
------------------
- Fix CSRF misspelling (thanks to Andy Freeland)
- Added some client side CSRF helpers (thanks to Andy Freeland)
- Upgrade to jQuery 1.9.1 and jQuery Migrate 1.1.1
- Do not clutter url parameters in ``js``, ``javascript`` and ``js_lib`` template tags.
0.6.2 (2013-02-18)
------------------
- Compatible with Django 1.5
0.6.1 (2013-02-11)
------------------
- Added ``static`` method (even if it's a unused reserved keyword)
0.6 (2013-02-09)
----------------
- Added basic user attributes access
- Added permissions support
- Added ``booleans`` context processor
- Added jQuery 1.9.0 and jQuery Migrate 1.0.0
- Upgraded QUnit to 1.11.0
- Added QUnit theme support
- Allow to specify jQuery version (1.8.3 and 1.9.0 are bundled)
0.5 (2012-12-17)
----------------
- Added namespaced URLs support
- Upgraded to Jasmine 1.3.1
- Refactor testing tools:
- Rename ``test/js`` into ``js/test`` and reorganize test resources
- Renamed ``runner_url*`` into ``url*`` on ``JsTestCase``
- Handle ``url_args`` and ``url_kwargs`` on ``JsTestCase``
- Renamed ``JasmineMixin`` into ``JasmineSuite``
- Renamed ``QUnitMixin`` into ``QUnitSuite``
- Extracted runners initialization into includable templates
- Added ``JsFileTestCase`` to run tests from a static html file without live server
- Added ``JsTemplateTestCase`` to run tests from a rendered template file without live server
- Added some settings to filter scope:
- Serialized named URLs whitelist: ``settings.JS_URLS``
- Serialized named URLs blacklist: ``settings.JS_URLS_EXCLUDE``
- Serialized namespaces whitelist: ``settings.JS_URLS_NAMESPACES``
- Serialized namespaces blacklist: ``settings.JS_URLS_NAMESPACES_EXCLUDE``
- Serialized translations whitelist: ``settings.JS_I18N_APPS``
- Serialized translations blacklist: ``settings.JS_I18N_APPS_EXCLUDE``
- Expose PhantomJS timeout with ``PhantomJsRunner.timeout`` attribute
0.4 (2012-12-04)
----------------
- Upgraded to jQuery 1.8.3
- Upgraded to Jasmine 1.3.0
- Synchronous URLs and context fetch.
- Use ``django.utils.termcolors``
- Class based javascript testing tools:
- Factorize ``JsTestCase`` common behaviour
- Removed ``JsTestCase.run_jasmine()`` and added ``JasmineMixin``
- Removed ``JsTestCase.run_qunit()`` and added ``QUnitMixin``
- Extract ``TapParser`` into ``djangojs.tap``
- Only one Django.js test suite
- Each framework is tested against its own test suite
- Make jQuery support optionnal into ``JsTestCase``
- Improved JsTestCase output
- Drop Python 2.6 support
- Added API documentation
0.3.2 (2012-11-10)
------------------
- Optionnal support for Django Absolute
0.3.1 (2012-11-03)
------------------
- Added JsTestView.django_js to optionnaly include django.js
- Added js_init block to runners to templates.
0.3 (2012-11-02)
----------------
- Improved ``ready`` event handling
- Removed runners from ``urls.py``
- Added documentation
- Added ``ContextJsonView`` and ``Django.context`` fetched from json.
- Improved error handling
- Added ``DjangoJsError`` custom error type
0.2 (2012-10-23)
----------------
- Refactor template tag initialization
- Provides Jasmine and QUnit test views with test discovery (globbing)
- Provides Jasmine and QUnit test cases
- Added ``Django.file()``
- Added ``{% javascript %}``, ``{% js %}`` and ``{% css %}`` template tags
0.1.3 (2012-10-02)
------------------
- First public release
- Provides django.js with ``url()`` method and constants
- Provides ``{% verbatim %}`` template tag
- Patch ``jQuery.ajax()`` to handle CSRF tokens
- Loads the django javascript catalog for all apps supporting it
- Loads the django javascript i18n/l10n tools in the page
Raw data
{
"_id": null,
"home_page": "https://github.com/Robert-Chiang/django.js",
"name": "django.js-ng",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "django javascript test url reverse helpers",
"author": "Robert Chiang",
"author_email": "robert@streetvoice.com",
"download_url": "https://files.pythonhosted.org/packages/50/29/81e9ddef8f245609a071a61d4a970e70e957ecbe50b34ba4f4160ebf0e81/django.js-ng-2.4.0.tar.gz",
"platform": null,
"description": "=========\nDjango.js\n=========\n\n\n\n\n\n\n\n\n\n\nDjango.js provides tools for JavaScript development with Django.\n\nDjango.js is inspired from:\n\n- `Miguel Araujo's verbatim snippet <https://gist.github.com/893408>`_.\n- `Dimitri Gnidash's django-js-utils <https://github.com/Dimitri-Gnidash/django-js-utils>`_.\n\nThis is currently a work in progress (API wil not be stable before 1.0) so don't expect it to be perfect but please `submit an issue <https://github.com/noirbizarre/django.js/issues>`_ for any bug you find or any feature you want.\n\nCompatibility\n=============\n\nDjango.js requires Python 3.x and Django 2.x.\n\n\nInstallation\n============\n\nYou can install Django.js with pip:\n\n::\n\n $ pip install django.js-ng\n\nor with easy_install:\n\n::\n\n $ easy_install django.js-ng\n\n\nAdd ``djangojs`` to your ``settings.INSTALLED_APPS``.\n\nAdd ``djangojs.urls`` to your root ``URL_CONF``:\n\n::\n\n urlpatterns = patterns('',\n ...\n url(r'^djangojs/', include('djangojs.urls')),\n ...\n )\n\n\nDocumentation\n=============\n\nThe documentation is hosted `on Read the Docs <http://djangojs.readthedocs.org/en/latest/>`_\n\nChangelog\n=========\n\nCurrent\n-------\n\n- Nothing yet\n\n0.8.1 (2013-10-19)\n------------------\n\n- Fixed management command with Django < 1.5 (fix `issue #23 <https://github.com/noirbizarre/django.js/issues/23>`_ thanks to Wasil Sergejczyk)\n- Fixed Django CMS handling (fix `issue #25 <https://github.com/noirbizarre/django.js/issues/25>`_ thanks to Wasil Sergejczyk)\n- Cache Django.js views and added ``settings.JS_CACHE_DURATION``\n- Allow customizable Django.js initialization\n- Allow manual reload of context and URLs\n- Published Django.js on bower (thanks to Wasil Sergejczyk for the initial bower.json file)\n- Do not automatically translate languages name in context\n\n\n0.8.0 (2013-07-14)\n------------------\n\n- Allow features to be disabled with:\n - ``settings.JS_URLS_ENABLED``\n - ``settings.JS_USER_ENABLED``\n - ``settings.JS_CONTEXT_ENABLED``\n- Added context black and white lists (``settings.JS_CONTEXT`` and ``settings.JS_CONTEXT_EXCLUDE``)\n- Allow context serialization customization by inheritance with ``settings.JS_CONTEXT_PROCESSOR``\n- Do not fail on import when parsing URLs (Fix `issue #7 <https://github.com/noirbizarre/django.js/issues/7>`_ thanks to Wasil Sergejczyk)\n- Treat starred non-capturing groups and starred characters as optionnals (Fix `issue #22 <https://github.com/noirbizarre/django.js/issues/22>`_)\n- Upgraded to jQuery 2.0.3 (and added 1.10.2)\n- Upgraded to QUnit 1.12.0\n- Added ``js`` management command.\n- Extracted URLs handling and context handling into their own modules\n- First contrib module: ``social_auth`` (thanks to Olivier Cort\u00e8s)\n\n\n\n0.7.6 (2013-06-07)\n------------------\n\n- Reintroduce Python 2.6 support (thanks to Andy Freeland)\n- Fix `issue #20 <https://github.com/noirbizarre/django.js/issues/20>`_\n\n\n0.7.5 (2013-06-01)\n------------------\n\n- Handle Django 1.5+ custom user model\n- Upgraded to jQuery 2.0.2 and jQuery Migrate 1.2.1\n\n\n0.7.4 (2013-05-11)\n------------------\n\n- Preserve declaration order in StorageGlobber.glob() (Fix `issue #17 <https://github.com/noirbizarre/django.js/issues/17>`_)\n- Fixes on localization on handling\n\n\n0.7.3 (2013-04-30)\n------------------\n\n- Upgraded to jQuery 2.0.0\n- Package both minified and unminified versions.\n- Load minified versions (Django.js, jQuery and jQuery Migrate) when DEBUG=False\n\n\n0.7.2 (2013-04-30)\n------------------\n\n- Fix `issue #16 <https://github.com/noirbizarre/django.js/issues/16>`_\n- Declare package as Python 3 compatible on PyPI\n\n\n0.7.1 (2013-04-25)\n------------------\n\n- Optionnaly include jQuery with ``{% django_js_init %}``.\n\n\n0.7.0 (2013-04-25)\n------------------\n\n- Added RequireJS/AMD helpers and documentation\n- Added Django Pipeline integration helpers and documentation\n- Support unnamed URLs resolution.\n- Support custom content types to be passed into the js/javascript script tag (thanks to Travis Jensen)\n- Added ``coffee`` and ``coffescript`` template tags\n- Python 3 compatibility\n\n\n0.6.5 (2013-03-13)\n------------------\n\n- Make JsonView reusable\n- Unescape regex characters in URLs\n- Fix handling of 0 as parameter for Javasript reverse URLs\n\n\n0.6.4 (2013-03-10)\n------------------\n\n- Support namespaces without app_name set.\n\n\n0.6.3 (2013-03-08)\n------------------\n\n- Fix CSRF misspelling (thanks to Andy Freeland)\n- Added some client side CSRF helpers (thanks to Andy Freeland)\n- Upgrade to jQuery 1.9.1 and jQuery Migrate 1.1.1\n- Do not clutter url parameters in ``js``, ``javascript`` and ``js_lib`` template tags.\n\n\n0.6.2 (2013-02-18)\n------------------\n\n- Compatible with Django 1.5\n\n\n0.6.1 (2013-02-11)\n------------------\n\n- Added ``static`` method (even if it's a unused reserved keyword)\n\n\n0.6 (2013-02-09)\n----------------\n\n- Added basic user attributes access\n- Added permissions support\n- Added ``booleans`` context processor\n- Added jQuery 1.9.0 and jQuery Migrate 1.0.0\n- Upgraded QUnit to 1.11.0\n- Added QUnit theme support\n- Allow to specify jQuery version (1.8.3 and 1.9.0 are bundled)\n\n\n0.5 (2012-12-17)\n----------------\n\n- Added namespaced URLs support\n- Upgraded to Jasmine 1.3.1\n- Refactor testing tools:\n - Rename ``test/js`` into ``js/test`` and reorganize test resources\n - Renamed ``runner_url*`` into ``url*`` on ``JsTestCase``\n - Handle ``url_args`` and ``url_kwargs`` on ``JsTestCase``\n - Renamed ``JasmineMixin`` into ``JasmineSuite``\n - Renamed ``QUnitMixin`` into ``QUnitSuite``\n - Extracted runners initialization into includable templates\n- Added ``JsFileTestCase`` to run tests from a static html file without live server\n- Added ``JsTemplateTestCase`` to run tests from a rendered template file without live server\n- Added some settings to filter scope:\n - Serialized named URLs whitelist: ``settings.JS_URLS``\n - Serialized named URLs blacklist: ``settings.JS_URLS_EXCLUDE``\n - Serialized namespaces whitelist: ``settings.JS_URLS_NAMESPACES``\n - Serialized namespaces blacklist: ``settings.JS_URLS_NAMESPACES_EXCLUDE``\n - Serialized translations whitelist: ``settings.JS_I18N_APPS``\n - Serialized translations blacklist: ``settings.JS_I18N_APPS_EXCLUDE``\n- Expose PhantomJS timeout with ``PhantomJsRunner.timeout`` attribute\n\n\n\n0.4 (2012-12-04)\n----------------\n\n- Upgraded to jQuery 1.8.3\n- Upgraded to Jasmine 1.3.0\n- Synchronous URLs and context fetch.\n- Use ``django.utils.termcolors``\n- Class based javascript testing tools:\n - Factorize ``JsTestCase`` common behaviour\n - Removed ``JsTestCase.run_jasmine()`` and added ``JasmineMixin``\n - Removed ``JsTestCase.run_qunit()`` and added ``QUnitMixin``\n - Extract ``TapParser`` into ``djangojs.tap``\n- Only one Django.js test suite\n- Each framework is tested against its own test suite\n- Make jQuery support optionnal into ``JsTestCase``\n- Improved JsTestCase output\n- Drop Python 2.6 support\n- Added API documentation\n\n\n0.3.2 (2012-11-10)\n------------------\n\n- Optionnal support for Django Absolute\n\n\n0.3.1 (2012-11-03)\n------------------\n\n- Added JsTestView.django_js to optionnaly include django.js\n- Added js_init block to runners to templates.\n\n\n0.3 (2012-11-02)\n----------------\n\n- Improved ``ready`` event handling\n- Removed runners from ``urls.py``\n- Added documentation\n- Added ``ContextJsonView`` and ``Django.context`` fetched from json.\n- Improved error handling\n- Added ``DjangoJsError`` custom error type\n\n\n0.2 (2012-10-23)\n----------------\n\n- Refactor template tag initialization\n- Provides Jasmine and QUnit test views with test discovery (globbing)\n- Provides Jasmine and QUnit test cases\n- Added ``Django.file()``\n- Added ``{% javascript %}``, ``{% js %}`` and ``{% css %}`` template tags\n\n\n0.1.3 (2012-10-02)\n------------------\n\n- First public release\n- Provides django.js with ``url()`` method and constants\n- Provides ``{% verbatim %}`` template tag\n- Patch ``jQuery.ajax()`` to handle CSRF tokens\n- Loads the django javascript catalog for all apps supporting it\n- Loads the django javascript i18n/l10n tools in the page\n\n\n",
"bugtrack_url": null,
"license": "LGPL",
"summary": "Django JS Tools",
"version": "2.4.0",
"project_urls": {
"Download": "http://pypi.python.org/pypi/django.js-ng",
"Homepage": "https://github.com/Robert-Chiang/django.js"
},
"split_keywords": [
"django",
"javascript",
"test",
"url",
"reverse",
"helpers"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0ce23c571351a782627a1afcbb8607385e10e73fc6de84cd75e81c1e20507e28",
"md5": "e281830a4cf137cd310e3c4455e80eb7",
"sha256": "7137074ae82fcaa98b1794283f47a9e6ee10f0c2e3ad9e4a105f5636018bcb12"
},
"downloads": -1,
"filename": "django.js_ng-2.4.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "e281830a4cf137cd310e3c4455e80eb7",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 1169014,
"upload_time": "2023-05-16T01:51:12",
"upload_time_iso_8601": "2023-05-16T01:51:12.620543Z",
"url": "https://files.pythonhosted.org/packages/0c/e2/3c571351a782627a1afcbb8607385e10e73fc6de84cd75e81c1e20507e28/django.js_ng-2.4.0-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "502981e9ddef8f245609a071a61d4a970e70e957ecbe50b34ba4f4160ebf0e81",
"md5": "f6170851298ff3695a6e45b7bf077217",
"sha256": "0402c34823b57926a7c16c1464c65dbabd4f672066e92e9e8fe64e8839b17462"
},
"downloads": -1,
"filename": "django.js-ng-2.4.0.tar.gz",
"has_sig": false,
"md5_digest": "f6170851298ff3695a6e45b7bf077217",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1104909,
"upload_time": "2023-05-16T01:51:18",
"upload_time_iso_8601": "2023-05-16T01:51:18.626344Z",
"url": "https://files.pythonhosted.org/packages/50/29/81e9ddef8f245609a071a61d4a970e70e957ecbe50b34ba4f4160ebf0e81/django.js-ng-2.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-16 01:51:18",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Robert-Chiang",
"github_project": "django.js",
"travis_ci": true,
"coveralls": false,
"github_actions": false,
"tox": true,
"lcname": "django.js-ng"
}