Skip to main content

Plotly Dash Template Generator and Tools

Project description

dash-tools - An Open-Source Plotly Dash CLI Toolchain

Create a templated multi-page Plotly Dash app with CLI in less than 7 seconds!

About

dash-tools is an open-source toolchain for Plotly Dash Framework. With a user-friendly command line interface, creating Dash applications will never be quicker.

With user and developer-friendly templates, generating a new app only takes senconds. In fact, it will take longer to install this tool than it will to use it!

Installation

dash-tools is available through pip.

pip install dash-tools

Examples

Below are common usage examples. See Commands section for more details.

# Create a new Dash app called MyDashApp
dash-tools --init MyDashApp

Templates are also available using the optional template argument after --init:

# Create a new Dash app called MyDashApp using 'minimal' theme
dash-tools --init MyDashApp minimal

Templates

Listed below are available project template templates. Please see the above example on how to use templates.

  • default - the default multi-page template. Includes examples of ClientsideCallbacks, multi-page routing, external stylesheets, header, footer, and 404 page.
  • minimal - for the minimalists. Not much here but the bare bones.
  • heroku - Build for deployment with Heroku. Includes necessary deploy files. Built on the minimal template.

If you would like to develop templates, please read the Creating Templates section below.

Commands

Project Build Commands

  • --init, -i Args: REQUIRED (project name) OPTIONAL (template) : Creates a Plotly Dash app with the given name in the current working directory. Optional args specified can be used for templates.
  • --templates : List available templates.

Other

  • --help, -h: Display CLI helpful hints
  • --version: Display current version.

Development

Creating Templates

  1. Templates are found here: dash_tools/templating/templates/<Template Name>. When a user uses CLI to choose a template with the name <Template Name> the template will be copied to their system.

  2. Adding a new template to the templates directory requires adding the new template to the Enum list in templating.templateUtils:Templates Enum. Template name must match Enum value, eg.

    class Templates(Enum):
    DEFAULT = 'default'
    MINIMAL = 'minimal'
    <NEWTEMPLATE> = '<newtemplate>'
    
  3. Any file names or files containing the strings {appName} or {createTime} will be formatted with the given app name and creation time. Eg. README.md.template: # Created on {createTime} will copy to the user's filesystem as # Creaded on 2022-03-30 22:06:07

  4. All template files must end in .template

License

MIT License. See LICENSE.txt file.

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

dash-tools-0.4.tar.gz (4.0 MB view hashes)

Uploaded Source

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