Skip to main content

A Django app to build and test a collection of front-end components for myDALITE

Project description

SALTISE-components is a simple Django app to build and test a collection of front-end components for myDALITE built with preact and Material UI.

Quick start

  1. Add the Components app to your requirements, then pip install:

    pip install SALTISE-components
  2. Add “components” to your INSTALLED_APPS setting like this:

    INSTALLED_APPS = [
        ...
        'components',
        ...
    ]
  3. Import minified script to access component library (you can override default styles using global css names):

    <script src="{% static 'component/js/app.min.js' %}" defer="true"></script>
  4. Inject components into the DOM, customizing props as needed. Assuming django-csp is installed, the Navigation components is injected via:

    <script nonce="{{ request.csp_nonce }}">
        window.addEventListener("load", function () {
            const nav = () => {
                return components.h(components.Navigation, {
                    nonce: "{{ request.csp_nonce }}",
                });
            };
            components.render(
                nav(),
                document.getElementById("navigation-app")
            );
        });
    </script>

Quick start dev

  1. Install node modules:

    npm install
  2. Create python 3.8+ virtualenv and nstall pip-tools:

    python -m pip install --upgrade pip
    pip install pip-tools
  3. Install requirements:

    pip-sync requirements/requirements.txt
  4. Install pre-commit:

    pre-commit install
  5. Start the server:

    python components.py runserver
  6. Navigate to ‘localhost:8000/’, to see components in action.

  7. Build when you make edits to app.js:

    npx gulp scripts
  8. To create translations:

    npx gulp scripts
    python components.py makemessages -d djangojs -l fr -i=node_modules/* -i=venv*
    python components.py compilemessages -l fr -i=venv*
  1. If you wish, remake the package:

    tox --recreate
  2. To publish, e.g.:

    twine upload .tox/dist/SALTISE_components-0.1.zip --verbose

To do in myDALITE

  1. Align question difficulty serializer

  2. Define assignment difficulty in serializer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

SALTISE_components-0.2.15.tar.gz (6.7 MB view details)

Uploaded Source

File details

Details for the file SALTISE_components-0.2.15.tar.gz.

File metadata

  • Download URL: SALTISE_components-0.2.15.tar.gz
  • Upload date:
  • Size: 6.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.5

File hashes

Hashes for SALTISE_components-0.2.15.tar.gz
Algorithm Hash digest
SHA256 fc7aed871fe983deab269fea9b3e321a725f3392e2130cd9cce6e454f76adad8
MD5 3cb63d86463430e25f9a8caed8070d93
BLAKE2b-256 5ff56db0ba5341df9e04cc4db69ab0eae579c3da6f71aadf2ccb621473ae190f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page