Skip to main content

Chalice as an alternative to Flask for Plotly Dash

Project description

dash-chalice

This package integrates Plotly Dash with AWS Chalice. It provides a DashChalice object which is largely a slot-in replacement for dash.Dash, but with the underlying Flask server object replaced with a Chalice one. It aims to provide a more natural path for deployment using AWS Lambda than Zappa.

A simple example is given below. Note that Chalice expects projects to have a particular structure. To run this example, save the code below as app.py and include an empty JSON object {} within .chalice/config.json in the same directory. The example can then be run locally with chalice local.

import dash_html_components as html
import dash_core_components as dcc
from dash.dependencies import Input, Output
from dash_chalice import DashChalice


dash_app = DashChalice(__name__, title="Example")
dash_app.layout = html.Div(
    [
        dcc.Input(id="input", placeholder="Please type a name"),
        html.Div(id="output"),
    ]
)


@dash_app.callback(
    Output("output", "children"),
    Input("input", "value"),
)
def set_output(input):
    return "Hello!" if input in (None, "") else f"Hello {input}!"


# this needs to be called after the dash app has been set up
dash_app.finalise()

# nb: chalice expects an app variable to be exposed for running/deployment
app = dash_app.server

For more information on structuring and deploying apps with Chalice, see the documentation. In addition, you may find these workshop notes useful, as I have.

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-chalice-0.1.1.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dash_chalice-0.1.1-py3-none-any.whl (16.8 kB view details)

Uploaded Python 3

File details

Details for the file dash-chalice-0.1.1.tar.gz.

File metadata

  • Download URL: dash-chalice-0.1.1.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for dash-chalice-0.1.1.tar.gz
Algorithm Hash digest
SHA256 ba99a80c134a00dfbd4979ae6c54855c629c0132e07bbbf4233ce734963e4d06
MD5 8800d043430674266117bc7f7c1ed723
BLAKE2b-256 22142a987885c5b77cc728d98248ebca0ab465a6b98cc75d413496b2984ab864

See more details on using hashes here.

File details

Details for the file dash_chalice-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: dash_chalice-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for dash_chalice-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 169280e1e9df4f3c06f4791f62b48f99b17d9d5b639acbc28ab5d1ea0f4057f1
MD5 2db0ffe566b0e4a9a330c82fcc9c5c58
BLAKE2b-256 fd6ee673516e05415ad8651adf6a6c9f8b078070b31b3d8c3ddb2c7965494152

See more details on using hashes here.

Supported by

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