From 2b426037656346419a366a948ab892a4df3ef10f Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Wed, 6 Dec 2023 17:34:40 -0500 Subject: [PATCH 01/24] Add rough draft of custom components package article. --- _quarto.yml | 3 +- docs/custom-components-color-picker.png | Bin 0 -> 127928 bytes docs/custom-components-pkg.qmd | 298 ++++++++++++++++++++++++ 3 files changed, 300 insertions(+), 1 deletion(-) create mode 100644 docs/custom-components-color-picker.png create mode 100644 docs/custom-components-pkg.qmd diff --git a/_quarto.yml b/_quarto.yml index 18a5d78e..7901d33a 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -106,7 +106,7 @@ website: - icon: youtube href: https://www.youtube.com/playlist?list=PL9HYL-VRX0oRbLoj3FyL5zeASU5FMDgVe aria-label: Shiny YouTube Playlist - + sidebar: - id: components collapse-level: 2 @@ -189,6 +189,7 @@ website: - docs/ipywidgets.qmd - docs/ui-html.qmd - docs/workflow-server.qmd + - docs/custom-components-pkg.qmd - section: "Framework Comparisons" contents: - docs/comp-streamlit.qmd diff --git a/docs/custom-components-color-picker.png b/docs/custom-components-color-picker.png new file mode 100644 index 0000000000000000000000000000000000000000..9e7b3d5d4495fcda2352038be10fef195a342edb GIT binary patch literal 127928 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

MnuCKXR+_6Y=-|1n7P0hUfPB!z_0; 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 literal 0 HcmV?d00001 diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd new file mode 100644 index 00000000..1677e67b --- /dev/null +++ b/docs/custom-components-pkg.qmd @@ -0,0 +1,298 @@ +--- +title: Custom Components Package +filters: + - line-highlight +--- + + +While there are a large number of pre-built [components available for Shiny,](components/) there are times when you may want to create your own. In this article we’ll walk through the process of creating a custom component package for Shiny. We’ll be using React and Typescript to build the component, but the process is similar for other languages and frameworks. + +## What we’ll build + +We’ll be building a custom color picker component. The component will be a simple color picker that allows the user to select a color from a palette of colors. The component will be built using React and Typescript and will be packaged as a python package that can be deployed to pypi and installed with pip so other users can easily use it in their apps. + +::: {.callout-note} +The example here uses typescript. If you don't want to use typescript, don't worry! Javascript works just fine. To make this example javascript you can simply erase the type annotations, or run the typescript compiler on the source code to strip them out automatically. +::: + +The component itself is based on the library [react-color](https://casesandberg.github.io/react-color/). We’ll be using the `SketchPicker` component from that library to build our custom component. The full code is as follows. + +```{.ts filename="srcts/index.tsx" } +import { SketchPicker } from "react-color"; +import React from "react"; + +function ColorPickerReact({ + initialValue, + onNewValue, +}: { + // The initial value for the color picker + initialValue: string; + // A callback that should be called whenever the color is changed + onNewValue: (x: string) => void; +}) { + const [currentColor, setCurrentColor] = React.useState(initialValue); + + return ( + { + setCurrentColor(color.hex); + onNewValue(color.hex); + }} + /> + ); +} + +``` + +![Output of `ColorPickerReact` component](custom-components-color-picker.png){width=200px} + + +Your component may look very different, but at the end of the day it just needs to be a self-contained react component. + + + +## The quick version + +If you just want to get up and running with the code, you can start with one of the available templates available with the `Shiny create` command and then run the commands provided after the template is created. + +```bash +% Shiny create +? Which template would you like to use?: Custom JavaScript Component +? What kind of component do you want to build?: React component +? What do you want to name your component? + Name must be dash-delimited and all lowercase. + E.g. 'my-component-name' my-color-picker +? Enter destination directory: ./my-color-picker +Setting up my-color-picker component package... + +Next steps: +- Run `cd my-color-picker` to change into the new directory +- Run `npm install` to install dependencies +- Run `npm run build` to build the component +- Install package locally with `pip install -e .` +- Open and run the example app in the `example-app` directory +``` + + +If you want to understand what's going on under the hood, read on! + +## Project structure + + +This template will contain the color picker component above along with all the scaffolding to build and package it as a python package. The template also includes an example app that can be used to test the component while developing. Let's take a look at the files that are created and talk through why they are there. + + + +```{.bash filename="my-color-picker/" } +├── package.json +├── package-lock.json +├── srcts +│   └── index.tsx +├── example-app +│   └── app.py +├── fancy_color_picker +│   ├── __init__.py +│   ├── distjs +│   │   └── index.js +│   └── fancy_color_picker.py +├── pyproject.toml +├── README.md +└── tsconfig.json +``` + + +### `package.json` + +This is the standard `package.json` file for a javascript project. It contains the dependencies and build commands for the javascript code. The important sections are: +- A dependency on the `shiny-bindings-react` package. This is a javascript package with helpers for making it easier to create input and output bindings using React. Later we use the function `makeReactInput()` from this package to make Shiny aware of the component and its role as an input binding. +- `build` command. The build command (and accompanying `watch` command) use `esbuild` to transpile the typescript to javascript and bundle the dependencies (like `shiny-bindings-react` and `react` itself. + +### `srcts/index.tsx` + +This is the source code for the react component. We talked about the react component - `ColorPickerReact` - above, but it's worth touching on the actual binding: + +```ts +import { SketchPicker } from "react-color"; +import type { ColorResult } from "react-color"; +import React from "react"; + +import { makeReactInput } from "@shiny-helpers/react"; + +// Generates a new input binding that renders the supplied react component +// into the root of the webcomponent. +makeReactInput({ + tagName: "fancy-color-picker", + initialValue: "#fff", + renderComp: ({ onNewValue }) => ( + onNewValue(color)} + /> + ), +}); + +// Color Picker React component +function ColorPickerReact(...) { ... } +``` + +In here we declare the `tagName` of for our component. This name is used to generate the correct markup with python later. Under the hood `makeReactInput()` generates a [webcomponent](https://developer.mozilla.org/en-US/docs/Web/Web_Components) to hold our input. A webcomponent is a custom HTML element. The `tagName` provided here represents the name of that custom component we're generating. In this case we're registering the component as ``. + +::: {.callout-note} +This example uses the webcomponent based interface provided by the `@posit-dev/shiny-binding-react` package, but if you want lower level access you can use the built-in class-based interface. See the [Shiny for R documentation](https://shiny.posit.co/r/articles/build/building-inputs/) for more details. +::: + +Next we provide an `initialValue` for the component. This is the value that will be used when the component is first rendered. In this case we're using `#fff`. + +Finally we provide a `renderComp` function. This function is called whenever the component needs to be rendered. It is passed a single argument, `onNewValue`. This is a callback that should be called whenever the value of the component changes. In this case we're just passing the value of the color picker to the callback. This will send the value to Shiny and update the value of the input. + + +### `fancy_color_picker/` + + +#### `distjs/*` + +This is where the bundled javascript from `srcts` gets placed. You shouldn’t ever need to modify anything in here by hand. It will be automatically generated when you run `npm run build`. It is important to note the path though, as we will need to tell Shiny where to find this javascript when we declare the `HTMLDependency`... + + +#### `fancy_color_picker.py` + +```{.python} +from pathlib import PurePath +from htmltools import HTMLDependency, Tag +from shiny.module import resolve_id + +# This object is used to let Shiny know where the dependencies needed to run +# our component all live. In this case, we're just using a single javascript +# file but we could also include CSS. +fancy_color_picker_deps = HTMLDependency( + "fancy_color_picker", + "1.0.0", + source={ + "package": "fancy_color_picker", + "subdir": str(PurePath(__file__).parent / "distjs"), + }, + script={"src": "index.js", "type": "module"}, +) + + +def fancy_color_picker(id: str): + """ + A shiny input. + """ + return Tag( + # This is the name of the custom tag we created with our webcomponent + "fancy-color-picker", + fancy_color_picker_deps, + # Use resolve_id so that our component will work in a module + id=resolve_id(id), + ) +``` + + +This is the main python file for the package. It contains the code that tells Shiny about the component and how to render it. The important parts are: + +##### `fancy_color_picker_deps` + +```{.python} +fancy_color_picker_deps = HTMLDependency( + "fancy_color_picker", + "1.0.0", + source={ + "package": "fancy_color_picker", + "subdir": str(PurePath(__file__).parent / "distjs"), + }, + script={"src": "index.js", "type": "module"}, +) +``` + +This setups an "html-dependency" for our component. HTMLDependencies are Shiny's way of keeping track of what resources are needed for the currently displayed elements. This html dependency is telling Shiny that whenever there is a `fancy_color_picker` on the page in an app, it needs to also have the bundled javascript at `distjs/index.js` as well. + +::: {.callout-note} +Here we just declare javascript dependencies but you can also include style sheets. +::: + + +##### `fancy_color_picker` + +```{.python} +def fancy_color_picker(id: str): + """ + A shiny input. + """ + return Tag( + # This is the name of the custom tag we created with our webcomponent + "fancy-color-picker", + fancy_color_picker_deps, + # Use resolve_id so that our component will work in a module + id=resolve_id(id), + ) +``` + +This is the actual UI function for our component. Aka the one that gets called by the user in their app’s UI to add our component to their app. + +Because `makeReactInput()` works by creating a [webcomponent](https://developer.mozilla.org/en-US/docs/Web/Web_Components), to render our input we just need to pass the tag name we setup as the argument `tagName` to `makeReactInput().` Next, we pass the `fancy_color_picker_deps` html dependency we just made and the ID of the binding and we’re good to go! + +::: {.callout-note} +By using the `resolve_id(id)` function here when declaring our ID, we make sure that the component works [Shiny modules](docs/workflow-modules) where the ID of the component needs to be prefixed with the module name. +::: + + +#### `__init__.py` + +```{.python} +from .fancy_color_picker import fancy_color_picker + +__all__ = [ + "fancy_color_picker", +] +``` + +This is how we tell python what functions/ variables our package exposes. In this case it’s a single function, `fancy_color_picker`. If you were to add more components you would also need to register them here for them to be importable by users in their apps. For more information on the structure of these files see the [python docs site.](https://packaging.python.org/tutorials/packaging-projects/#creating-the-package-files) + + +### `pyproject.toml` + +This file is used to tell python/pypi about our package. It contains the name of the package, the version, and the dependencies. A deep dive into the structure of this file is outside the scope of this article, but you can find more information in the [Python Packaging Authority docs.]https://packaging.python.org/en/latest/guides/writing-pyproject-toml/) + + +### `tsconfig.json` +This file is used to configure typescript, which we are using to write our component. Like the `pyproject.toml` file, a deep dive into the structure of this file is outside the scope of this article, but you can find more information in the [typescript docs.](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html) + + +### `example-app/app.py` + +```{.python} +from fancy_color_picker import fancy_color_picker + +from shiny import App, render, ui + +app_ui = ui.page_fluid( + fancy_color_picker("myComponent"), + ui.output_text("valueOut"), +) + +def server(input, output, session): + @render.text + def valueOut(): + return f"Value from input is {input.myComponent()}" + +app = App(app_ui, server) +``` + +This is a simple example app that can be used to test the component while developing. It uses the `fancy_color_picker` function we defined in `fancy_color_picker.py` to add the component to the app. It also uses the `render.text` decorator to render the value of the input to the page. + + +## Development workflow + +Now that we’ve seen the files that make up the package, let’s talk about how to develop the component. + +While there are lots of ways to develop components with live-feedback (e.g. Storybook, dev servers like `vite`, etc) an easy way to develop a component with our package structure is to use the example app, an editable mode pip install, and the watch mode for our build step. We can do this with the following steps: + +1. Install the package in “editable mode” with `pip install -e .` (https://setuptools.pypa.io/en/latest/userguide/development_mode.html) + +2. Run the bundler in watch mode with `npm run watch`. This will watch the `srcts` directory for changes and automatically rebuild the javascript when it detects a change. + +3. Run the example app in live-reload mode. If you're using VScode, the Shiny for Python extension enables this automatically when pressing the run button above the app script. (https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) + +Now you can update your component javascript/python functions and your app will automatically reload with the changes. Happy developing! From 197ad59f4a5c5528311104eacd5baf09b5b694d3 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Thu, 7 Dec 2023 16:17:04 -0500 Subject: [PATCH 02/24] Add context for building output bindings as well. --- docs/custom-components-pkg.qmd | 151 +++++++++++++++++++++++++++------ 1 file changed, 127 insertions(+), 24 deletions(-) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index 1677e67b..9d507368 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -5,11 +5,11 @@ filters: --- -While there are a large number of pre-built [components available for Shiny,](components/) there are times when you may want to create your own. In this article we’ll walk through the process of creating a custom component package for Shiny. We’ll be using React and Typescript to build the component, but the process is similar for other languages and frameworks. +While there are a large number of pre-built [components available for Shiny,](components/) there are times when you may want to create your own. In this article we’ll walk through the process of creating a custom input component package for Shiny. We’ll be using React and Typescript to build the component, but the process is similar for other languages and frameworks. ## What we’ll build -We’ll be building a custom color picker component. The component will be a simple color picker that allows the user to select a color from a palette of colors. The component will be built using React and Typescript and will be packaged as a python package that can be deployed to pypi and installed with pip so other users can easily use it in their apps. +The component we are going to build is a color picker that returns the hex-code of the chosen color as a string for the user to use in their app. The component will be built using React and Typescript and will be packaged as a python package that can be deployed to `pypi` and installed with `pip` so other users can easily use it in their apps. ::: {.callout-note} The example here uses typescript. If you don't want to use typescript, don't worry! Javascript works just fine. To make this example javascript you can simply erase the type annotations, or run the typescript compiler on the source code to strip them out automatically. @@ -50,6 +50,11 @@ function ColorPickerReact({ Your component may look very different, but at the end of the day it just needs to be a self-contained react component. +::: {.callout-tip} +## What about an output binding? + +This article touches on building an input component. However, it's also possible to build output components. The process and project structure is very similar to inputs. Throughout this article look for the "What about an output binding?" tips for more information on how to build an output binding. There is also a template for building an output binding in the `Shiny create` menu. +::: ## The quick version @@ -58,16 +63,21 @@ If you just want to get up and running with the code, you can start with one of ```bash % Shiny create -? Which template would you like to use?: Custom JavaScript Component -? What kind of component do you want to build?: React component +? Which template would you like to use?: + Custom JavaScript Component +? What kind of component do you want to build?: + React component ? What do you want to name your component? - Name must be dash-delimited and all lowercase. - E.g. 'my-component-name' my-color-picker -? Enter destination directory: ./my-color-picker -Setting up my-color-picker component package... +Name must be dash-delimited and all lowercase. +E.g. 'my-component-name' + fancy-color-picker +? Enter destination directory: + ./fancy-color-picker + +Setting up fancy-color-picker component package... Next steps: -- Run `cd my-color-picker` to change into the new directory +- Run `cd fancy-color-picker` to change into the new directory - Run `npm install` to install dependencies - Run `npm run build` to build the component - Install package locally with `pip install -e .` @@ -77,10 +87,14 @@ Next steps: If you want to understand what's going on under the hood, read on! -## Project structure +::: {.callout-note} +The component we're creating here uses React, but there are templates for building components with plain javascript as well. The general concepts we talk about here apply to all of the templates so feel free to use whichever one you prefer. +::: -This template will contain the color picker component above along with all the scaffolding to build and package it as a python package. The template also includes an example app that can be used to test the component while developing. Let's take a look at the files that are created and talk through why they are there. +## Project structure + +The template from above contains the color picker component above, along with all the scaffolding neccesary to build and package it as a python package.Let's take a look at the files that are created and talk through why they are there. @@ -108,25 +122,27 @@ This is the standard `package.json` file for a javascript project. It contains t - A dependency on the `shiny-bindings-react` package. This is a javascript package with helpers for making it easier to create input and output bindings using React. Later we use the function `makeReactInput()` from this package to make Shiny aware of the component and its role as an input binding. - `build` command. The build command (and accompanying `watch` command) use `esbuild` to transpile the typescript to javascript and bundle the dependencies (like `shiny-bindings-react` and `react` itself. +The `.package-lock.json` file is generated by npm and contains the exact versions of the dependencies used in the project. You shouldn't need to modify this file by hand. + ### `srcts/index.tsx` -This is the source code for the react component. We talked about the react component - `ColorPickerReact` - above, but it's worth touching on the actual binding: +This is where all the typescript/javascript code lives. We talked about the react component - `ColorPickerReact` - above, but it's worth touching on the code that binds that react component with Shiny so it functions as an input: ```ts import { SketchPicker } from "react-color"; import type { ColorResult } from "react-color"; import React from "react"; -import { makeReactInput } from "@shiny-helpers/react"; +import { makeReactInput } from "@posit-dev/shiny-bindings-react"; // Generates a new input binding that renders the supplied react component // into the root of the webcomponent. makeReactInput({ tagName: "fancy-color-picker", initialValue: "#fff", - renderComp: ({ onNewValue }) => ( + renderComp: ({ initialValue, onNewValue }) => ( onNewValue(color)} /> ), @@ -139,13 +155,36 @@ function ColorPickerReact(...) { ... } In here we declare the `tagName` of for our component. This name is used to generate the correct markup with python later. Under the hood `makeReactInput()` generates a [webcomponent](https://developer.mozilla.org/en-US/docs/Web/Web_Components) to hold our input. A webcomponent is a custom HTML element. The `tagName` provided here represents the name of that custom component we're generating. In this case we're registering the component as ``. ::: {.callout-note} -This example uses the webcomponent based interface provided by the `@posit-dev/shiny-binding-react` package, but if you want lower level access you can use the built-in class-based interface. See the [Shiny for R documentation](https://shiny.posit.co/r/articles/build/building-inputs/) for more details. +This example uses the webcomponent based interface provided by the [`@posit-dev/shiny-bindings-react` package,](https://github.com/posit-dev/shiny-bindings/blob/main/packages/react/README.md) but if you want lower level access you can use the built-in class-based interface. See the [Shiny for R documentation](https://shiny.posit.co/r/articles/build/building-inputs/) for more details. ::: Next we provide an `initialValue` for the component. This is the value that will be used when the component is first rendered. In this case we're using `#fff`. -Finally we provide a `renderComp` function. This function is called whenever the component needs to be rendered. It is passed a single argument, `onNewValue`. This is a callback that should be called whenever the value of the component changes. In this case we're just passing the value of the color picker to the callback. This will send the value to Shiny and update the value of the input. +Finally, we provide a `renderComp` function. This function is called whenever the component needs to be rendered. It is passed an object with two properties, `onNewValue` and `initialValue`. `onNewValue` is a callback that should be called whenever the value of the component changes. In this case we're just passing the value of the color picker to the callback. This will send the value to Shiny and update the value of the input. `initialValue` is the value that should be used to initialize the component. In this case we're just passing the value we were given to the `ColorPickerReact` component. + +::: {.callout-tip collapse="true"} +## What about an output binding? + +The component we're building here is an input. However, you may be interested in building an output binding. There is a template for this but the process is not too different. Just instead of using `makeReactInput()` you would use `makeReactOutput()`. Here's how we would do it for a simple output that displays a color: + +```{.ts filename="index.tsx"} +// Simple react output binding that renders a div with the background color +makeReactOutput<{ value: string }>({ + tagName: "fancy-color-shower", + renderComp: ({ value }) => ( +

+ ), +}); +``` +::: ### `fancy_color_picker/` @@ -190,11 +229,11 @@ def fancy_color_picker(id: str): ``` -This is the main python file for the package. It contains the code that tells Shiny about the component and how to render it. The important parts are: +This is the main python script for the package. It contains the code that tells Shiny about the component and how to render it. The important parts are: ##### `fancy_color_picker_deps` -```{.python} +```{.python } fancy_color_picker_deps = HTMLDependency( "fancy_color_picker", "1.0.0", @@ -206,10 +245,10 @@ fancy_color_picker_deps = HTMLDependency( ) ``` -This setups an "html-dependency" for our component. HTMLDependencies are Shiny's way of keeping track of what resources are needed for the currently displayed elements. This html dependency is telling Shiny that whenever there is a `fancy_color_picker` on the page in an app, it needs to also have the bundled javascript at `distjs/index.js` as well. +This sets up an "html-dependency" for our component. HTMLDependencies are Shiny's way of keeping track of what resources are needed for the currently displayed elements. This html dependency is telling Shiny that whenever there is a `fancy_color_picker` on the page in an app, it needs to also have the bundled javascript at `distjs/index.js` as well. ::: {.callout-note} -Here we just declare javascript dependencies but you can also include style sheets. +Here we just declare javascript dependencies, but you can also include style sheets with the `stylesheet` argument. ::: @@ -231,13 +270,51 @@ def fancy_color_picker(id: str): This is the actual UI function for our component. Aka the one that gets called by the user in their app’s UI to add our component to their app. -Because `makeReactInput()` works by creating a [webcomponent](https://developer.mozilla.org/en-US/docs/Web/Web_Components), to render our input we just need to pass the tag name we setup as the argument `tagName` to `makeReactInput().` Next, we pass the `fancy_color_picker_deps` html dependency we just made and the ID of the binding and we’re good to go! +Because `makeReactInput()` [works by creating a webcomponent](#srctsindex.tsx), to render our input we just need to pass the tag name we setup in the `tagName` argument to `makeReactInput().` Next, we pass the `fancy_color_picker_deps` html dependency we just made and the ID of the binding and we’re good to go! ::: {.callout-note} By using the `resolve_id(id)` function here when declaring our ID, we make sure that the component works [Shiny modules](docs/workflow-modules) where the ID of the component needs to be prefixed with the module name. ::: +::: {.callout-tip collapse="true"} +## What about an output binding? + +Like with the javascript, the process for setting up the python code for an output binding is not too different. Although there is a bit of extra work because we need to build both the ui _and_ server components. Here's how we would do that for the color shower output binding we defined above: + +```{.python filename="fancy_color_picker.py"} +@output_transformer() +async def render_color( + _meta: TransformerMetadata, + _fn: ValueFn[str | None], +): + res = await resolve_value_fn(_fn) + if res is None: + return None + + if not isinstance(res, str): + # Throw an error if the value is not a string + raise TypeError(f"Expected a string, got {type(res)}. ") + + # Send the results to the client. Make sure that this is a serializable + # object and matches what is expected in the javascript code. + return {"value": res} + + +def output_color(id: str): + """ + Show a color + """ + return Tag( + "fancy-color-shower", + fancy_color_picker_deps, + id=resolve_id(id), + ) +``` + +Make sure you add these to your `__init__.py` file so they are exposed to users of your package. Again, there is an output binding template in the `Shiny create` menu that can get you up and running quickly. +::: + #### `__init__.py` ```{.python} @@ -283,16 +360,42 @@ app = App(app_ui, server) This is a simple example app that can be used to test the component while developing. It uses the `fancy_color_picker` function we defined in `fancy_color_picker.py` to add the component to the app. It also uses the `render.text` decorator to render the value of the input to the page. +::: {.callout-tip collapse="true"} +## What about an output binding? + +In our output binding example we defined an output that conveniently _displays_ colors. If we were packaging up two components like this we could/should modify the example app to showcase both of them. + +```{.python filename="app.py"} +from fancy_color_picker import fancy_color_picker, output_color, render_color + +from shiny import App, ui + +app_ui = ui.page_fluid( + fancy_color_picker("myComponent"), + output_color("myColor"), +) + +def server(input, output, session): + @render_color + def myColor(): + return input.myComponent() + +app = App(app_ui, server) +``` + +::: + + ## Development workflow Now that we’ve seen the files that make up the package, let’s talk about how to develop the component. While there are lots of ways to develop components with live-feedback (e.g. Storybook, dev servers like `vite`, etc) an easy way to develop a component with our package structure is to use the example app, an editable mode pip install, and the watch mode for our build step. We can do this with the following steps: -1. Install the package in “editable mode” with `pip install -e .` (https://setuptools.pypa.io/en/latest/userguide/development_mode.html) +1. Install the package in [“editable mode”](https://setuptools.pypa.io/en/latest/userguide/development_mode.html) with `pip install -e .` 2. Run the bundler in watch mode with `npm run watch`. This will watch the `srcts` directory for changes and automatically rebuild the javascript when it detects a change. -3. Run the example app in live-reload mode. If you're using VScode, the Shiny for Python extension enables this automatically when pressing the run button above the app script. (https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) +3. Run the example app in live-reload mode. If you're using VScode, the [Shiny for Python extension](https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) enables this automatically when pressing the run button above the app script. Now you can update your component javascript/python functions and your app will automatically reload with the changes. Happy developing! From f5c8c714b1f08abd114ccbe551a420d3508e3546 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Thu, 7 Dec 2023 16:23:20 -0500 Subject: [PATCH 03/24] Add screenshot of running example app --- docs/custom-components-pkg-example-app.png | Bin 0 -> 381932 bytes docs/custom-components-pkg.qmd | 4 ++++ 2 files changed, 4 insertions(+) create mode 100644 docs/custom-components-pkg-example-app.png diff --git a/docs/custom-components-pkg-example-app.png b/docs/custom-components-pkg-example-app.png new file mode 100644 index 0000000000000000000000000000000000000000..965da2f52873139501dc2c351df323b1b6683dc4 GIT binary patch literal 381932 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 PVE_V8S3j3^P6 Date: Mon, 20 Nov 2023 13:32:41 -0500 Subject: [PATCH 04/24] Add one-off article as well and link betwen the two where appropriate --- _quarto.yml | 1 + docs/custom-component-one-off.qmd | 323 ++++++++++++++++++++++++++++++ docs/custom-components-pkg.qmd | 6 +- docs/custom-components-result.png | Bin 0 -> 102600 bytes 4 files changed, 329 insertions(+), 1 deletion(-) create mode 100644 docs/custom-component-one-off.qmd create mode 100644 docs/custom-components-result.png diff --git a/_quarto.yml b/_quarto.yml index 7901d33a..1840ed5d 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -189,6 +189,7 @@ website: - docs/ipywidgets.qmd - docs/ui-html.qmd - docs/workflow-server.qmd + - docs/custom-component-one-off.qmd - docs/custom-components-pkg.qmd - section: "Framework Comparisons" contents: diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd new file mode 100644 index 00000000..b2fd1781 --- /dev/null +++ b/docs/custom-component-one-off.qmd @@ -0,0 +1,323 @@ +--- +title: "Custom javascript component" +--- + +In this post, you will learn how to create a custom element and accompanying output binding in Shiny. This is useful if you want to create an output that is not currently in Shiny for your app. + +:::{.callout-note} + +This post talks about making a one-off component for a given app. If you plan on reusing your component or distributing it for others to use, see the accompanying post on [making a custom component package.](custom-components-pkg.html) +::: + +:::{.callout-warning} +The code shown here is simplified to get the point across, but before you use it in your own app, you should make sure to add error handling and other features to make it robust. +::: + +# The problem + +You found a new table library that you really want to use in your Shiny app. Problem is, there's no wrapper for it, currently. The library is [Tabulator](https://tabulator.info/) and it's a javascript library for making tables with data. + +# The solution + +To implement a custom tabulator element for your app, you'll need to write three things: + +1. A javascript script that renders the element on the client side using the Tabulator library +2. An `output_tabulator()` function for placing the element in your app's UI +3. A `render_tabulator()` decorator for passing table data to the javascript code rendering the element on the server side + + +## The javascript code + +First things first, to use a custom Javascript library we need to write... some javascript. + +To do this we will create a new folder called `tabulator/` that has the following structure: + +:::{.callout-note} +This example uses plain javascript with no build step. For an example using typescript and with a build-step see the accompanying article on [making a custom component package.](custom-components-pkg.html) +::: + +``` +tabulator/ + tabulator_esm.min.js + tabulator.min.css + tableComponent.js +``` + +Both `tabulator_esm.min.js` and `tabulator.min.css` are downloaded from [tabulator's website.](https://tabulator.info/docs/5.5/install#sources-download) `tableComponent.js` is the script that we will write that contains the code for rendering the table to our Shiny app. + +:::{.callout-note} +The code in this article will be abbreviated to show the relevant parts. If you want to see the full code, see the [accompanying repo.](https://github.com/nstrayer/pyshiny-output-binding-example) +::: + + +To create an output binding in Shiny, we create a new instance of the `Shiny.OutputBinding` class. + +```{.javascript filename="tableComponent.js"} +class TabulatorOutputBinding extends Shiny.OutputBinding { + // Find element to render in + find(scope) { ... } + + // Render output element in the found element + renderValue(el, payload) { ... } +} + +// Register the binding +Shiny.outputBindings.register( + new TabulatorOutputBinding(), + "shiny-tabulator-output" +); +``` + +This class has two methods that we need to implement: `find()` and `renderValue()`. The `find()` method is used to find the element that we want to render the table in. The `renderValue()` method is used to render the table in the element. After making that class we need to register it with Shiny so it can find and send data to instances of our output. + +### The `find()` method + +Now that we have the scaffolding setup, we can fill it in. Starting with the `find` method, this function is passed a `scope` object, which is a `JQuery` selection and should return the element you wish to render your output into. + +```{.javascript filename="tableComponent.js"} +class TabulatorOutputBinding extends Shiny.OutputBinding { + find(scope) { + return scope.find(".shiny-tabulator-output"); + } + + renderValue(el, payload) {...} +} + +Shiny.outputBindings.register(...); +``` + +Note that we're using the class `".shiny-tabulator-output"` here to mark the element that we want to render the table in. This is the same class that we will use in our `output_tabulator()` function in our app's server code. You can use any valid css selector here, but it's common to use a descriptive class name like this. + +### The `renderValue()` method + +Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el` which is an HTMLElement as found by our find function, and `payload` which is the data that the server has provided from the render function (more on this [soon.](#the-render_tabulator-decorator)) + +```{.javascript filename="tableComponent.js"} +// Import the Tabulator library +import { Tabulator } from "./tabulator_esm.min.js"; + +class TabulatorOutputBinding extends Shiny.OutputBinding { + find(scope) { ... } + + renderValue(el, payload) { + // Unpack the info we get from the associated render function + const { columns, data, type_hints } = payload; + + // Convert the column names to a format that Tabulator expects + const columnsDef = columns.map((col, i) => { + return { + title: col, + field: col, + hozAlign: type_hints[i] === "numeric" ? "right" : "left", + }; + }); + + // Data comes in as a series of rows with each row having as many elements + // as there are columns in the data. We need to map this to a series of + // objects with keys corresponding to the column names. + function zipRowWithColumns(row) { + const obj = {}; + row.forEach((val, i) => { + obj[columns[i]] = val; + }); + return obj; + } + + // Render the table + new Tabulator(el, { + data: data.map(zipRowWithColumns), + layout: "fitColumns", + columns: columnsDef, + }); + } +} + +Shiny.outputBindings.register(...); +``` + +The implementation of this function is not terribly important and draws directly from the [tabulator docs](https://tabulator.info/docs/5.5/quickstart). + +What matters is that we take our data, transform it in some way, and then instantiate our table with the `new Tabulator(el, {...})` call. In this case we take data in the form of the rows of a passed data frame, the column names, and the types of those columns (we decide this format when we [create the render decorator](#the-render_tabulator-decorator)), and construct a js object in the form of `data = [{col1: foo1, col2: bar1, ...}, {col1: foo2, col2: bar2, ...}]`. We also combine the column names and types to create the `columnsDef` object that Tabulator expects. + +The format of this will vary entirely based upon the type of component you're building though, so if you don't follow, don't worry! + +:::{.callout-note} + +Since this code is relying on the `Shiny` object just existing in the Javascript context. It's safe to wrap all the above code in an if statement so it only runs if that object exists. This is useful if you're writing a package that might be used in a non-Shiny context, your code won't error out and break the document. + +```{.javascript filename="tableComponent.js"} +if (Shiny) { + class TabulatorOutputBinding extends Shiny.OutputBinding { ... } + + Shiny.outputBindings.register(...); +} +``` +::: + +To see the full javascript code, see `tabulator/tableComponent.js` in the [accompanying repo.](https://github.com/nstrayer/pyshiny-output-binding-example/blob/main/tabulator/tableComponent.js) + +## The `output_tabulator()` function + +For the case of our table we just need an HTML element to target with our javascript code. When we setup [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. + +```{.python filename="app.py"} +from shiny import ui, App +from shiny.module import resolve_id + +from htmltools import HTMLDependency + +tabulator_dep = HTMLDependency( + "tabulator", + "5.5.2", + source={"subdir": "tabulator"}, + script={"src": "tableComponent.js", "type": "module"}, + stylesheet={"href": "tabulator.min.css"}, + all_files=True, +) + +def output_tabulator(id, height="200px"): + return ui.div( + tabulator_dep, + # Use resolve_id so that our component will work in a module + id=resolve_id(id), + class_="shiny-tabulator-output", + style=f"height: {height}", + ) +``` + +We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step and making sure that they're included in our app anytime the `output_tabulator()` function is called (but not more than once.) + +:::{.callout-note} +Note the use of `all_files=True` here. This makes it so we can do the esm import of the tabulator library. Otherwise `tabulator_esm.min.js` would not be hosted and the js library couldn't find it. +::: + +Now, the `output_tabulator()` function can be called anywhere we want to render a table in our app. + +## The `render_tabulator()` decorator + +Now we've got the client-side logic finished, we need to write a custom render decorator that sends our data into the component. + +To do this we can leverage some tools provided by Shiny in the `shiny.render.transformer` subpackage. + +```{.python filename="app.py"} +from shiny.render.transformer import ( + output_transformer, + resolve_value_fn, + TransformerMetadata, + ValueFn, +) + + +@output_transformer +async def render_tabulator( + _meta: TransformerMetadata, + _fn: ValueFn[pd.DataFrame | None], +): + res = await resolve_value_fn(_fn) + if res is None: + return None + + if not isinstance(res, pd.DataFrame): + # Throw an error if the value is not a dataframe + raise TypeError(f"Expected a pandas.DataFrame, got {type(res)}. ") + + # Get data from dataframe as a list of lists where each inner list is a + # row, column names as array of strings and types of each column as an + # array of strings + return { + "data": res.values.tolist(), + "columns": res.columns.tolist(), + "type_hints": res.dtypes.astype(str).tolist(), + } +``` + +The `output_transformer` decorator is a decorator factory that takes a function that returns a dictionary of data to be passed to the client side. The function that it decorates is passed two arguments: `_meta` and `_fn`. + +`_meta` is a dictionary of metadata about the function that is being decorated. We don't use it in our example. + +`_fn` is the function that is being decorated. Aka the function that goes below the `@render_tabulator()` in your app's server code. In this case we are expecting that that function returns either a pandas dataframe or `None`. + +In the code above we use types so that we can get some type checking in our IDE, but these are not required. Also note that the decorated function is an async function, so we need to use the `await` keyword when we call it for `resolve_value_fn()`. + +```python +... +res = await resolve_value_fn(_fn) +... +``` + +`resolve_value_fn()` is a helper provided in `shiny.render.transformer` for resolving the value of a function that may or may not be async. This allows us to write our code in a way that is agnostic to how the user has written their render function. + +Next, we check to make sure that the value returned by the function is a dataframe. If it's not, we throw an error. This is not required, but it's good practice to do so. + +```python +... +if not isinstance(res, pd.DataFrame): + # Throw an error if the value is not a dataframe + raise TypeError(f"Expected a pandas.DataFrame, got {type(res)}. ") +... +``` + +Finally, we return a dictionary of data that we want to pass to the client side. In this case we return the data as a list of lists, the column names as an array of strings, and the types of each column as an array of strings using methods provided by pandas. + +```python +... +return { + "data": res.values.tolist(), + "columns": res.columns.tolist(), + "type_hints": res.dtypes.astype(str).tolist(), +} +... +``` + +This returned value is then what gets sent to the client side and is available in the `payload` argument of the `renderValue()` method of our `TabulatorOutputBinding` class. + +# The result + +Now we have all the components neccesary to use our tabulator output component. Here's an app that uses it to render some number of rows of the indomitable `mtcars` dataset. + +```{.python filename="app.py"} +from shiny import ui, App +from pathlib import Path +import pandas as pd + +# Code for the custom output +... + +# App code +app_ui = ui.page_fluid( + ui.input_slider("n", "Number of rows to show", 1, 20, 10), + output_tabulator("tabulatorTable"), +) + + +def server(input, output, session): + @render_tabulator + def tabulatorTable(): + return pd.read_csv(Path(__file__).parent / "mtcars.csv").head(input.n()) + + +app = App(app_ui, server) +``` + +Which results in the following app: + + + + +:::{.sourceCode} +![](./custom-components-result.png){fig-alt="Screenshot of resulting app" class="app-screenshot"} +::: + + +To see the full app script, see `app.py` in the accompanying repo for this post [here.](https://github.com/nstrayer/pyshiny-output-binding-example/blob/main/app.py) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index ab29bfbc..8cfaacef 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -1,5 +1,5 @@ --- -title: Custom Components Package +title: Custom components package filters: - line-highlight --- @@ -7,6 +7,10 @@ filters: While there are a large number of pre-built [components available for Shiny,](components/) there are times when you may want to create your own. In this article we’ll walk through the process of creating a custom input component package for Shiny. We’ll be using React and Typescript to build the component, but the process is similar for other languages and frameworks. +::: {.callout-note} +If you just want to build a one-off component for a single app, a full package may be overkill. See the accompanying article [Custom javascript component](custom-component-one-off.html) for a simpler approach. +::: + ## What we’ll build The component we are going to build is a color picker that returns the hex-code of the chosen color as a string for the user to use in their app. The component will be built using React and Typescript and will be packaged as a python package that can be deployed to `pypi` and installed with `pip` so other users can easily use it in their apps. diff --git a/docs/custom-components-result.png b/docs/custom-components-result.png new file mode 100644 index 0000000000000000000000000000000000000000..f7d290007e695c3dadcb2f67cebda8e103796efc GIT binary patch literal 102600 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%0A4M0Kxq5YT8XSpBPyK<>NA2(oahy~Kwu0Qa5$ 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 M{_=(VbH;xE1NvuWrT_o{ literal 0 HcmV?d00001 From e0aa5a5b115069da1de5139d7dfadc902d52718b Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 13:09:17 -0500 Subject: [PATCH 05/24] Switch repo for the one-off example to posit-dev org --- docs/custom-component-one-off.qmd | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index b2fd1781..ed6a601f 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -46,7 +46,7 @@ tabulator/ Both `tabulator_esm.min.js` and `tabulator.min.css` are downloaded from [tabulator's website.](https://tabulator.info/docs/5.5/install#sources-download) `tableComponent.js` is the script that we will write that contains the code for rendering the table to our Shiny app. :::{.callout-note} -The code in this article will be abbreviated to show the relevant parts. If you want to see the full code, see the [accompanying repo.](https://github.com/nstrayer/pyshiny-output-binding-example) +The code in this article will be abbreviated to show the relevant parts. If you want to see the full code, see the [accompanying repo.](https://github.com/posit-dev/pyshiny-output-binding-example) ::: @@ -154,7 +154,7 @@ if (Shiny) { ``` ::: -To see the full javascript code, see `tabulator/tableComponent.js` in the [accompanying repo.](https://github.com/nstrayer/pyshiny-output-binding-example/blob/main/tabulator/tableComponent.js) +To see the full javascript code, see `tabulator/tableComponent.js` in the [accompanying repo.](https://github.com/posit-dev/pyshiny-output-binding-example/blob/main/tabulator/tableComponent.js) ## The `output_tabulator()` function @@ -320,4 +320,4 @@ Which results in the following app: ::: -To see the full app script, see `app.py` in the accompanying repo for this post [here.](https://github.com/nstrayer/pyshiny-output-binding-example/blob/main/app.py) +To see the full app script, see `app.py` in the accompanying repo for this post [here.](https://github.com/posit-dev/pyshiny-output-binding-example/blob/main/app.py) From 274d5873da452a241a3f88188ee07490ab2344e0 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 14:59:23 -0500 Subject: [PATCH 06/24] Update docs/custom-component-one-off.qmd Co-authored-by: Winston Chang --- docs/custom-component-one-off.qmd | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index ed6a601f..5b5fdb10 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -15,20 +15,20 @@ The code shown here is simplified to get the point across, but before you use it # The problem -You found a new table library that you really want to use in your Shiny app. Problem is, there's no wrapper for it, currently. The library is [Tabulator](https://tabulator.info/) and it's a javascript library for making tables with data. +You found a new table library that you really want to use in your Shiny app. The library is [Tabulator](https://tabulator.info/), which is a JavaScript library for making tables with data. But there's a problem: there's no way to easily use it from a Shiny app. To do this, we'll need to write some Python code that will let us use the library from the Python side of Shiny, and wrap the library's JavaScript code to make it talk to JavaScript side of Shiny. # The solution -To implement a custom tabulator element for your app, you'll need to write three things: +To implement a custom Tabulator element for your app, you'll need to write three things: -1. A javascript script that renders the element on the client side using the Tabulator library +1. A JavaScript script that renders the element on the client side using the Tabulator library 2. An `output_tabulator()` function for placing the element in your app's UI 3. A `render_tabulator()` decorator for passing table data to the javascript code rendering the element on the server side ## The javascript code -First things first, to use a custom Javascript library we need to write... some javascript. +First things first: to use a custom JavaScript library we need to write... some JavaScript. To do this we will create a new folder called `tabulator/` that has the following structure: @@ -72,7 +72,7 @@ This class has two methods that we need to implement: `find()` and `renderValue( ### The `find()` method -Now that we have the scaffolding setup, we can fill it in. Starting with the `find` method, this function is passed a `scope` object, which is a `JQuery` selection and should return the element you wish to render your output into. +Now that we have the scaffolding setup, we can fill it in. Starting with the `find` method, this function is passed a `scope` object, which is a `jQuery` selection and should return the element you wish to render your output into. ```{.javascript filename="tableComponent.js"} class TabulatorOutputBinding extends Shiny.OutputBinding { @@ -90,7 +90,7 @@ Note that we're using the class `".shiny-tabulator-output"` here to mark the ele ### The `renderValue()` method -Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el` which is an HTMLElement as found by our find function, and `payload` which is the data that the server has provided from the render function (more on this [soon.](#the-render_tabulator-decorator)) +Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el` which is an HTMLElement as found by our find function, and `payload` which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). ```{.javascript filename="tableComponent.js"} // Import the Tabulator library From 0a404b45de7c98fb56a05b4daab17b1f45657d88 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 15:02:46 -0500 Subject: [PATCH 07/24] Fix JavaScript casing --- docs/custom-component-one-off.qmd | 12 ++++++------ docs/custom-components-pkg.qmd | 30 +++++++++++++++--------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index 5b5fdb10..769ce855 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -1,5 +1,5 @@ --- -title: "Custom javascript component" +title: "Custom JavaScript component" --- In this post, you will learn how to create a custom element and accompanying output binding in Shiny. This is useful if you want to create an output that is not currently in Shiny for your app. @@ -23,17 +23,17 @@ To implement a custom Tabulator element for your app, you'll need to write three 1. A JavaScript script that renders the element on the client side using the Tabulator library 2. An `output_tabulator()` function for placing the element in your app's UI -3. A `render_tabulator()` decorator for passing table data to the javascript code rendering the element on the server side +3. A `render_tabulator()` decorator for passing table data to the JavaScript code rendering the element on the server side -## The javascript code +## The JavaScript code First things first: to use a custom JavaScript library we need to write... some JavaScript. To do this we will create a new folder called `tabulator/` that has the following structure: :::{.callout-note} -This example uses plain javascript with no build step. For an example using typescript and with a build-step see the accompanying article on [making a custom component package.](custom-components-pkg.html) +This example uses plain JavaScript with no build step. For an example using typescript and with a build-step see the accompanying article on [making a custom component package.](custom-components-pkg.html) ::: ``` @@ -154,11 +154,11 @@ if (Shiny) { ``` ::: -To see the full javascript code, see `tabulator/tableComponent.js` in the [accompanying repo.](https://github.com/posit-dev/pyshiny-output-binding-example/blob/main/tabulator/tableComponent.js) +To see the full JavaScript code, see `tabulator/tableComponent.js` in the [accompanying repo.](https://github.com/posit-dev/pyshiny-output-binding-example/blob/main/tabulator/tableComponent.js) ## The `output_tabulator()` function -For the case of our table we just need an HTML element to target with our javascript code. When we setup [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. +For the case of our table we just need an HTML element to target with our JavaScript code. When we setup [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. ```{.python filename="app.py"} from shiny import ui, App diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index 8cfaacef..cab75e36 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -8,7 +8,7 @@ filters: While there are a large number of pre-built [components available for Shiny,](components/) there are times when you may want to create your own. In this article we’ll walk through the process of creating a custom input component package for Shiny. We’ll be using React and Typescript to build the component, but the process is similar for other languages and frameworks. ::: {.callout-note} -If you just want to build a one-off component for a single app, a full package may be overkill. See the accompanying article [Custom javascript component](custom-component-one-off.html) for a simpler approach. +If you just want to build a one-off component for a single app, a full package may be overkill. See the accompanying article [Custom JavaScript component](custom-component-one-off.html) for a simpler approach. ::: ## What we’ll build @@ -16,7 +16,7 @@ If you just want to build a one-off component for a single app, a full package m The component we are going to build is a color picker that returns the hex-code of the chosen color as a string for the user to use in their app. The component will be built using React and Typescript and will be packaged as a python package that can be deployed to `pypi` and installed with `pip` so other users can easily use it in their apps. ::: {.callout-note} -The example here uses typescript. If you don't want to use typescript, don't worry! Javascript works just fine. To make this example javascript you can simply erase the type annotations, or run the typescript compiler on the source code to strip them out automatically. +The example here uses typescript. If you don't want to use typescript, don't worry! Javascript works just fine. To make this example JavaScript you can simply erase the type annotations, or run the typescript compiler on the source code to strip them out automatically. ::: The component itself is based on the library [react-color](https://casesandberg.github.io/react-color/). We’ll be using the `SketchPicker` component from that library to build our custom component. The full code is as follows. @@ -92,7 +92,7 @@ Next steps: If you want to understand what's going on under the hood, read on! ::: {.callout-note} -The component we're creating here uses React, but there are templates for building components with plain javascript as well. The general concepts we talk about here apply to all of the templates so feel free to use whichever one you prefer. +The component we're creating here uses React, but there are templates for building components with plain JavaScript as well. The general concepts we talk about here apply to all of the templates so feel free to use whichever one you prefer. ::: @@ -122,15 +122,15 @@ The template from above contains the color picker component above, along with al ### `package.json` -This is the standard `package.json` file for a javascript project. It contains the dependencies and build commands for the javascript code. The important sections are: -- A dependency on the `shiny-bindings-react` package. This is a javascript package with helpers for making it easier to create input and output bindings using React. Later we use the function `makeReactInput()` from this package to make Shiny aware of the component and its role as an input binding. -- `build` command. The build command (and accompanying `watch` command) use `esbuild` to transpile the typescript to javascript and bundle the dependencies (like `shiny-bindings-react` and `react` itself. +This is the standard `package.json` file for a JavaScript project. It contains the dependencies and build commands for the JavaScript code. The important sections are: +- A dependency on the `shiny-bindings-react` package. This is a JavaScript package with helpers for making it easier to create input and output bindings using React. Later we use the function `makeReactInput()` from this package to make Shiny aware of the component and its role as an input binding. +- `build` command. The build command (and accompanying `watch` command) use `esbuild` to transpile the typescript to JavaScript and bundle the dependencies (like `shiny-bindings-react` and `react` itself. The `.package-lock.json` file is generated by npm and contains the exact versions of the dependencies used in the project. You shouldn't need to modify this file by hand. ### `srcts/index.tsx` -This is where all the typescript/javascript code lives. We talked about the react component - `ColorPickerReact` - above, but it's worth touching on the code that binds that react component with Shiny so it functions as an input: +This is where all the typescript/JavaScript code lives. We talked about the react component - `ColorPickerReact` - above, but it's worth touching on the code that binds that react component with Shiny so it functions as an input: ```ts import { SketchPicker } from "react-color"; @@ -195,7 +195,7 @@ makeReactOutput<{ value: string }>({ #### `distjs/*` -This is where the bundled javascript from `srcts` gets placed. You shouldn’t ever need to modify anything in here by hand. It will be automatically generated when you run `npm run build`. It is important to note the path though, as we will need to tell Shiny where to find this javascript when we declare the `HTMLDependency`... +This is where the bundled JavaScript from `srcts` gets placed. You shouldn’t ever need to modify anything in here by hand. It will be automatically generated when you run `npm run build`. It is important to note the path though, as we will need to tell Shiny where to find this JavaScript when we declare the `HTMLDependency`... #### `fancy_color_picker.py` @@ -206,7 +206,7 @@ from htmltools import HTMLDependency, Tag from shiny.module import resolve_id # This object is used to let Shiny know where the dependencies needed to run -# our component all live. In this case, we're just using a single javascript +# our component all live. In this case, we're just using a single JavaScript # file but we could also include CSS. fancy_color_picker_deps = HTMLDependency( "fancy_color_picker", @@ -249,10 +249,10 @@ fancy_color_picker_deps = HTMLDependency( ) ``` -This sets up an "html-dependency" for our component. HTMLDependencies are Shiny's way of keeping track of what resources are needed for the currently displayed elements. This html dependency is telling Shiny that whenever there is a `fancy_color_picker` on the page in an app, it needs to also have the bundled javascript at `distjs/index.js` as well. +This sets up an "html-dependency" for our component. HTMLDependencies are Shiny's way of keeping track of what resources are needed for the currently displayed elements. This html dependency is telling Shiny that whenever there is a `fancy_color_picker` on the page in an app, it needs to also have the bundled JavaScript at `distjs/index.js` as well. ::: {.callout-note} -Here we just declare javascript dependencies, but you can also include style sheets with the `stylesheet` argument. +Here we just declare JavaScript dependencies, but you can also include style sheets with the `stylesheet` argument. ::: @@ -284,7 +284,7 @@ By using the `resolve_id(id)` function here when declaring our ID, we make sure ::: {.callout-tip collapse="true"} ## What about an output binding? -Like with the javascript, the process for setting up the python code for an output binding is not too different. Although there is a bit of extra work because we need to build both the ui _and_ server components. Here's how we would do that for the color shower output binding we defined above: +Like with the JavaScript, the process for setting up the python code for an output binding is not too different. Although there is a bit of extra work because we need to build both the ui _and_ server components. Here's how we would do that for the color shower output binding we defined above: ```{.python filename="fancy_color_picker.py"} @output_transformer() @@ -301,7 +301,7 @@ async def render_color( raise TypeError(f"Expected a string, got {type(res)}. ") # Send the results to the client. Make sure that this is a serializable - # object and matches what is expected in the javascript code. + # object and matches what is expected in the JavaScript code. return {"value": res} @@ -402,8 +402,8 @@ While there are lots of ways to develop components with live-feedback (e.g. Stor 1. Install the package in [“editable mode”](https://setuptools.pypa.io/en/latest/userguide/development_mode.html) with `pip install -e .` -2. Run the bundler in watch mode with `npm run watch`. This will watch the `srcts` directory for changes and automatically rebuild the javascript when it detects a change. +2. Run the bundler in watch mode with `npm run watch`. This will watch the `srcts` directory for changes and automatically rebuild the JavaScript when it detects a change. 3. Run the example app in live-reload mode. If you're using VScode, the [Shiny for Python extension](https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) enables this automatically when pressing the run button above the app script. -Now you can update your component javascript/python functions and your app will automatically reload with the changes. Happy developing! +Now you can update your component JavaScript/python functions and your app will automatically reload with the changes. Happy developing! From d5f61781c1a0695abc5cb554cd41fb151c425722 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 15:03:58 -0500 Subject: [PATCH 08/24] add mdn link for HTMLElement --- docs/custom-component-one-off.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index 769ce855..b1844657 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -90,7 +90,7 @@ Note that we're using the class `".shiny-tabulator-output"` here to mark the ele ### The `renderValue()` method -Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el` which is an HTMLElement as found by our find function, and `payload` which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). +Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el` which is an [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) as found by our find function, and `payload` which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). ```{.javascript filename="tableComponent.js"} // Import the Tabulator library From 8f9a32d061059256fa12ca2766ff26fb895c6875 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 15:06:17 -0500 Subject: [PATCH 09/24] Add explanatory comment about tabulator instantiation --- docs/custom-component-one-off.qmd | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index b1844657..6d008a84 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -123,7 +123,9 @@ class TabulatorOutputBinding extends Shiny.OutputBinding { return obj; } - // Render the table + // Instantiate a new Tabulator table in the element. + // This will also destroy any existing table in the element + // so we don't have to worry about adding and removing tables. new Tabulator(el, { data: data.map(zipRowWithColumns), layout: "fitColumns", From 9b6aafaf2cf0626e89b1920b2a3371bbea3578fc Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 15:36:27 -0500 Subject: [PATCH 10/24] Move articles to "extending" section --- _quarto.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/_quarto.yml b/_quarto.yml index 1840ed5d..266d3fe6 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -189,6 +189,8 @@ website: - docs/ipywidgets.qmd - docs/ui-html.qmd - docs/workflow-server.qmd + - section: "Extending" + contents: - docs/custom-component-one-off.qmd - docs/custom-components-pkg.qmd - section: "Framework Comparisons" From c4f13d52ba3d315e8407df5e70bf98b90cd016eb Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Fri, 8 Dec 2023 15:38:05 -0500 Subject: [PATCH 11/24] setup -> set up and anytime -> whenever --- docs/custom-component-one-off.qmd | 6 +++--- docs/custom-components-pkg.qmd | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index 6d008a84..bd053eea 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -72,7 +72,7 @@ This class has two methods that we need to implement: `find()` and `renderValue( ### The `find()` method -Now that we have the scaffolding setup, we can fill it in. Starting with the `find` method, this function is passed a `scope` object, which is a `jQuery` selection and should return the element you wish to render your output into. +Now that we have the scaffolding set up, we can fill it in. Starting with the `find` method, this function is passed a `scope` object, which is a `jQuery` selection and should return the element you wish to render your output into. ```{.javascript filename="tableComponent.js"} class TabulatorOutputBinding extends Shiny.OutputBinding { @@ -160,7 +160,7 @@ To see the full JavaScript code, see `tabulator/tableComponent.js` in the [accom ## The `output_tabulator()` function -For the case of our table we just need an HTML element to target with our JavaScript code. When we setup [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. +For the case of our table we just need an HTML element to target with our JavaScript code. When we set up [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. ```{.python filename="app.py"} from shiny import ui, App @@ -187,7 +187,7 @@ def output_tabulator(id, height="200px"): ) ``` -We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step and making sure that they're included in our app anytime the `output_tabulator()` function is called (but not more than once.) +We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step and making sure that they're included in our app whenever the `output_tabulator()` function is called (but not more than once.) :::{.callout-note} Note the use of `all_files=True` here. This makes it so we can do the esm import of the tabulator library. Otherwise `tabulator_esm.min.js` would not be hosted and the js library couldn't find it. diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index cab75e36..b229a9d7 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -274,7 +274,7 @@ def fancy_color_picker(id: str): This is the actual UI function for our component. Aka the one that gets called by the user in their app’s UI to add our component to their app. -Because `makeReactInput()` [works by creating a webcomponent](#srctsindex.tsx), to render our input we just need to pass the tag name we setup in the `tagName` argument to `makeReactInput().` Next, we pass the `fancy_color_picker_deps` html dependency we just made and the ID of the binding and we’re good to go! +Because `makeReactInput()` [works by creating a webcomponent](#srctsindex.tsx), to render our input we just need to pass the tag name we set up in the `tagName` argument to `makeReactInput().` Next, we pass the `fancy_color_picker_deps` html dependency we just made and the ID of the binding and we’re good to go! ::: {.callout-note} By using the `resolve_id(id)` function here when declaring our ID, we make sure that the component works [Shiny modules](docs/workflow-modules) where the ID of the component needs to be prefixed with the module name. From b64e3c9c41c42ce9475ea948b846348cdca2a444 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Mon, 11 Dec 2023 14:21:15 -0500 Subject: [PATCH 12/24] Update docs/custom-component-one-off.qmd Co-authored-by: Winston Chang --- docs/custom-component-one-off.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index bd053eea..a3859487 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -86,7 +86,7 @@ class TabulatorOutputBinding extends Shiny.OutputBinding { Shiny.outputBindings.register(...); ``` -Note that we're using the class `".shiny-tabulator-output"` here to mark the element that we want to render the table in. This is the same class that we will use in our `output_tabulator()` function in our app's server code. You can use any valid css selector here, but it's common to use a descriptive class name like this. +Note that we're using the class `".shiny-tabulator-output"` here to mark the element that we want to render the table in. This is the same class that we will use in our `output_tabulator()` function in our app's server code. You can use any valid CSS selector here, but it's common to use a descriptive class name like this. ### The `renderValue()` method From 37a2706258049ddd8b27d854e7adcea81f7a396b Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Mon, 11 Dec 2023 14:51:04 -0500 Subject: [PATCH 13/24] Copy-Edit updates Co-authored-by: Winston Chang --- docs/custom-component-one-off.qmd | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index a3859487..717406cf 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -90,7 +90,7 @@ Note that we're using the class `".shiny-tabulator-output"` here to mark the ele ### The `renderValue()` method -Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el` which is an [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) as found by our find function, and `payload` which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). +Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el`, which is an [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) as found by our find function, and `payload`, which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). ```{.javascript filename="tableComponent.js"} // Import the Tabulator library @@ -145,7 +145,7 @@ The format of this will vary entirely based upon the type of component you're bu :::{.callout-note} -Since this code is relying on the `Shiny` object just existing in the Javascript context. It's safe to wrap all the above code in an if statement so it only runs if that object exists. This is useful if you're writing a package that might be used in a non-Shiny context, your code won't error out and break the document. +This code relies on the `Shiny` object just existing in the JavaScript context, but you may want to wrap all the above code in an `if (Shiny)` statement so it only runs if the `Shiny` object exists. This is useful if you're writing a component that might be used in a non-Shiny context, your code won't error out and break the document. ```{.javascript filename="tableComponent.js"} if (Shiny) { @@ -190,7 +190,7 @@ def output_tabulator(id, height="200px"): We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step and making sure that they're included in our app whenever the `output_tabulator()` function is called (but not more than once.) :::{.callout-note} -Note the use of `all_files=True` here. This makes it so we can do the esm import of the tabulator library. Otherwise `tabulator_esm.min.js` would not be hosted and the js library couldn't find it. +Note the use of `all_files=True` here. This makes it so we can do the ESM import of the Tabulator library. Otherwise `tabulator_esm.min.js` would not be hosted and the JS library wouldn't be able to find it. ::: Now, the `output_tabulator()` function can be called anywhere we want to render a table in our app. @@ -233,11 +233,11 @@ async def render_tabulator( } ``` -The `output_transformer` decorator is a decorator factory that takes a function that returns a dictionary of data to be passed to the client side. The function that it decorates is passed two arguments: `_meta` and `_fn`. +The `output_transformer` decorator is a decorator factory (it's a decorator that creates decorators!) that takes a function that returns a dictionary of data to be passed to the client side. The function that it decorates is passed two arguments: `_meta` and `_fn`. `_meta` is a dictionary of metadata about the function that is being decorated. We don't use it in our example. -`_fn` is the function that is being decorated. Aka the function that goes below the `@render_tabulator()` in your app's server code. In this case we are expecting that that function returns either a pandas dataframe or `None`. +`_fn` is the function that is being decorated, i.e. the function that goes below the `@render_tabulator()` in your app's server code. In this case we are expecting that that function returns either a pandas dataframe or `None`. In the code above we use types so that we can get some type checking in our IDE, but these are not required. Also note that the decorated function is an async function, so we need to use the `await` keyword when we call it for `resolve_value_fn()`. From 4ed220d7936ba4bebbc7a98e24e27f011c57f2eb Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Mon, 11 Dec 2023 14:48:49 -0500 Subject: [PATCH 14/24] Better phrasing of html dependency paragraph --- docs/custom-component-one-off.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index 717406cf..6fcaa1bb 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -187,7 +187,7 @@ def output_tabulator(id, height="200px"): ) ``` -We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step and making sure that they're included in our app whenever the `output_tabulator()` function is called (but not more than once.) +We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step to make sure that they're included in our app whenever the `output_tabulator()` function is called (but not more than once). :::{.callout-note} Note the use of `all_files=True` here. This makes it so we can do the ESM import of the Tabulator library. Otherwise `tabulator_esm.min.js` would not be hosted and the JS library wouldn't be able to find it. From ab9224d2c95708a4eca222067990cb395748bef6 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Mon, 11 Dec 2023 15:22:54 -0500 Subject: [PATCH 15/24] Add more clarity about async nature of render function --- docs/custom-component-one-off.qmd | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index 6fcaa1bb..d53d6c31 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -232,6 +232,9 @@ async def render_tabulator( "type_hints": res.dtypes.astype(str).tolist(), } ``` +:::{.callout-note} +In the code above we use types so that we can get some type checking in our IDE, but these are not required. +::: The `output_transformer` decorator is a decorator factory (it's a decorator that creates decorators!) that takes a function that returns a dictionary of data to be passed to the client side. The function that it decorates is passed two arguments: `_meta` and `_fn`. @@ -239,15 +242,23 @@ The `output_transformer` decorator is a decorator factory (it's a decorator that `_fn` is the function that is being decorated, i.e. the function that goes below the `@render_tabulator()` in your app's server code. In this case we are expecting that that function returns either a pandas dataframe or `None`. -In the code above we use types so that we can get some type checking in our IDE, but these are not required. Also note that the decorated function is an async function, so we need to use the `await` keyword when we call it for `resolve_value_fn()`. -```python +```{.python} ... -res = await resolve_value_fn(_fn) + res = await resolve_value_fn(_fn) ... ``` -`resolve_value_fn()` is a helper provided in `shiny.render.transformer` for resolving the value of a function that may or may not be async. This allows us to write our code in a way that is agnostic to how the user has written their render function. +`resolve_value_fn()` is a helper provided in `shiny.render.transformer` for resolving the value of a function that may or may not be async. + + +:::{.callout-note} +# Why an asynchronous function? +It is required for output decorator functions to be `async`. This allows users of the render bindings to provide either synchronous or asynchronous functions to the decorator. This allows us to write our code in a way that is agnostic to how the user has written their render function. + +If you don't need any async behavior you can simply write your function as you would a standard synchronous function after `await`ing `resolve_value_fn()`. +::: + Next, we check to make sure that the value returned by the function is a dataframe. If it's not, we throw an error. This is not required, but it's good practice to do so. From 5deab8f8313e15f9d63050d55967ada7a989e5f3 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Mon, 11 Dec 2023 15:27:25 -0500 Subject: [PATCH 16/24] Add paragraph explaining the purpose of the render function --- docs/custom-component-one-off.qmd | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index d53d6c31..92850e17 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -199,6 +199,8 @@ Now, the `output_tabulator()` function can be called anywhere we want to render Now we've got the client-side logic finished, we need to write a custom render decorator that sends our data into the component. +A render function's job is to take the result of calling the decorated function, transform it into the format our client-side code wants (in many cases this may be as simple as just returning the object unchanged), and then returning that client-side friendly data which will be passed to our client's `renderValue()` method. + To do this we can leverage some tools provided by Shiny in the `shiny.render.transformer` subpackage. ```{.python filename="app.py"} From 5e42467f037a50772b597e4fdc2aad9796f90791 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Mon, 11 Dec 2023 16:27:11 -0500 Subject: [PATCH 17/24] Update and make styles for screenshots consistent across articles. --- docs/custom-component-one-off.qmd | 30 +++++++++++++++++++--- docs/custom-components-pkg.qmd | 42 +++++++++++++++++++++++++++++-- 2 files changed, 66 insertions(+), 6 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index 92850e17..b6d74734 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -317,21 +317,43 @@ app = App(app_ui, server) Which results in the following app: + + :::{.sourceCode} -![](./custom-components-result.png){fig-alt="Screenshot of resulting app" class="app-screenshot"} +![Our app with custom Tabulator component.](./custom-components-result.png){fig-alt="Screenshot of resulting app" class="app-screenshot"} ::: diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index b229a9d7..bd446617 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -49,7 +49,9 @@ function ColorPickerReact({ ``` -![Output of `ColorPickerReact` component](custom-components-color-picker.png){width=200px} +:::{.sourceCode} +![Output of `ColorPickerReact` component](custom-components-color-picker.png){width=200px fig-alt="Screenshot of color picker component" class="app-screenshot pad-top"} +::: Your component may look very different, but at the end of the day it just needs to be a self-contained react component. @@ -364,7 +366,10 @@ app = App(app_ui, server) This is a simple example app that can be used to test the component while developing. It uses the `fancy_color_picker` function we defined in `fancy_color_picker.py` to add the component to the app. It also uses the `render.text` decorator to render the value of the input to the page. -![Example app running with color picker](custom-components-pkg-example-app.png) +:::{.sourceCode} +![Example app running with color picker](custom-components-pkg-example-app.png){fig-alt="Screenshot of example app running" class="app-screenshot"} +::: + ::: {.callout-tip collapse="true"} ## What about an output binding? @@ -407,3 +412,36 @@ While there are lots of ways to develop components with live-feedback (e.g. Stor 3. Run the example app in live-reload mode. If you're using VScode, the [Shiny for Python extension](https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) enables this automatically when pressing the run button above the app script. Now you can update your component JavaScript/python functions and your app will automatically reload with the changes. Happy developing! + + From 25359725d298f52030d1699c4cb8d54739822b5d Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Tue, 12 Dec 2023 11:04:15 -0500 Subject: [PATCH 18/24] Updates to one-off article based on feedback from first PR --- docs/custom-component-one-off.qmd | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/docs/custom-component-one-off.qmd b/docs/custom-component-one-off.qmd index b6d74734..7a6e122d 100644 --- a/docs/custom-component-one-off.qmd +++ b/docs/custom-component-one-off.qmd @@ -68,11 +68,12 @@ Shiny.outputBindings.register( ); ``` -This class has two methods that we need to implement: `find()` and `renderValue()`. The `find()` method is used to find the element that we want to render the table in. The `renderValue()` method is used to render the table in the element. After making that class we need to register it with Shiny so it can find and send data to instances of our output. +This class has two methods that we need to implement: `find()` and `renderValue()`. The `find()` method is used to identify the element that will contain the rendered table. The `renderValue()` method is used to render the table in the element. After making that class we need to register it with Shiny so it can find and send data to instances of our output. ### The `find()` method -Now that we have the scaffolding set up, we can fill it in. Starting with the `find` method, this function is passed a `scope` object, which is a `jQuery` selection and should return the element you wish to render your output into. + +Now that we have the scaffolding set up we can start by filling in the `find` method. This function is passed a `scope` object, which is a `jQuery` selection and should return the element you wish to render your output into. ```{.javascript filename="tableComponent.js"} class TabulatorOutputBinding extends Shiny.OutputBinding { @@ -86,11 +87,11 @@ class TabulatorOutputBinding extends Shiny.OutputBinding { Shiny.outputBindings.register(...); ``` -Note that we're using the class `".shiny-tabulator-output"` here to mark the element that we want to render the table in. This is the same class that we will use in our `output_tabulator()` function in our app's server code. You can use any valid CSS selector here, but it's common to use a descriptive class name like this. +Note that we're using the class `".shiny-tabulator-output"` here to mark the element that we want to render the table in. This is the same class that we will use in our `output_tabulator()` function in our app's server code. You can use any valid CSS selector here, but it's common to use a class name that descibes the output. ### The `renderValue()` method -Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el`, which is an [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) as found by our find function, and `payload`, which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). +Next, we fill in the main logic for rendering our table in to the `renderValue` method. This method gets passed two arguments: `el`, which is an [HTMLElement](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) identified by our find function, and `payload`, which is the data that the server has provided from the render function (more on this [soon](#the-render_tabulator-decorator)). ```{.javascript filename="tableComponent.js"} // Import the Tabulator library @@ -139,13 +140,13 @@ Shiny.outputBindings.register(...); The implementation of this function is not terribly important and draws directly from the [tabulator docs](https://tabulator.info/docs/5.5/quickstart). -What matters is that we take our data, transform it in some way, and then instantiate our table with the `new Tabulator(el, {...})` call. In this case we take data in the form of the rows of a passed data frame, the column names, and the types of those columns (we decide this format when we [create the render decorator](#the-render_tabulator-decorator)), and construct a js object in the form of `data = [{col1: foo1, col2: bar1, ...}, {col1: foo2, col2: bar2, ...}]`. We also combine the column names and types to create the `columnsDef` object that Tabulator expects. +What matters is that we take our data, transform it in some way, and then instantiate our table with the `new Tabulator(el, {...})` call. In this case we take data in the form of the rows of a passed data frame, the column names, and the types of those columns (this is determined by [the render decorator](#the-render_tabulator-decorator)), and construct a js object in the form of `data = [{col1: foo1, col2: bar1, ...}, {col1: foo2, col2: bar2, ...}]`. We also combine the column names and types to create the `columnsDef` object that Tabulator expects. -The format of this will vary entirely based upon the type of component you're building though, so if you don't follow, don't worry! +Don't worry too much about following this particular format because it will change depending on the component that you are wrapping. :::{.callout-note} -This code relies on the `Shiny` object just existing in the JavaScript context, but you may want to wrap all the above code in an `if (Shiny)` statement so it only runs if the `Shiny` object exists. This is useful if you're writing a component that might be used in a non-Shiny context, your code won't error out and break the document. +This code relies on the `Shiny` object existing in the JavaScript context, but you may want to wrap all the above code in an `if (Shiny)` statement so it only runs if the `Shiny` object exists. This is useful if you're writing a component that might be used in a non-Shiny context because your code won't error out trying to access the non-existant `Shiny` variable and break the document. ```{.javascript filename="tableComponent.js"} if (Shiny) { @@ -160,7 +161,7 @@ To see the full JavaScript code, see `tabulator/tableComponent.js` in the [accom ## The `output_tabulator()` function -For the case of our table we just need an HTML element to target with our JavaScript code. When we set up [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. +Next we need an HTML element to target with our JavaScript code. When we set up [the find method](#the-find-method) for our binding, we chose the class `shiny-tabulator-output` as the mark of a tabualtor output, so we need to add that class. We also need to allow the user to set the ID of the element so that Shiny knows which element to target with which output. By wrapping the `id` argument in `resolve_id()` we make sure it will work in the context of modules. We'll also add a height argument so that the user can set the height of the table. ```{.python filename="app.py"} from shiny import ui, App @@ -187,9 +188,10 @@ def output_tabulator(id, height="200px"): ) ``` -We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step to make sure that they're included in our app whenever the `output_tabulator()` function is called (but not more than once). :::{.callout-note} +We use the `HTMLDependency` function to bind up the assets needed for tabulator that we made in the previous step to make sure th at they're included in our app whenever the `output_tabulator()` function is called (but not more than once). + Note the use of `all_files=True` here. This makes it so we can do the ESM import of the Tabulator library. Otherwise `tabulator_esm.min.js` would not be hosted and the JS library wouldn't be able to find it. ::: @@ -242,7 +244,7 @@ The `output_transformer` decorator is a decorator factory (it's a decorator that `_meta` is a dictionary of metadata about the function that is being decorated. We don't use it in our example. -`_fn` is the function that is being decorated, i.e. the function that goes below the `@render_tabulator()` in your app's server code. In this case we are expecting that that function returns either a pandas dataframe or `None`. +`_fn` is the decorated function, i.e. the function that goes below the `@render_tabulator()` decorator in your app's server code. In this case we are expecting the function to return either a pandas dataframe or `None`. ```{.python} @@ -256,13 +258,13 @@ The `output_transformer` decorator is a decorator factory (it's a decorator that :::{.callout-note} # Why an asynchronous function? -It is required for output decorator functions to be `async`. This allows users of the render bindings to provide either synchronous or asynchronous functions to the decorator. This allows us to write our code in a way that is agnostic to how the user has written their render function. +It is required by Shiny that the output decorator function be `async`. This allows users of the render bindings to provide either synchronous or asynchronous functions to the decorator. This ensures that the function will work whether or not the end user has defined their render function asynchronously. If you don't need any async behavior you can simply write your function as you would a standard synchronous function after `await`ing `resolve_value_fn()`. ::: -Next, we check to make sure that the value returned by the function is a dataframe. If it's not, we throw an error. This is not required, but it's good practice to do so. +Next, we check to make sure that the value returned by the function is a dataframe. If it's not, we throw an error. This is not strictly required, but is a best practice. ```python ... From 9ac3d84b08e57df321820d9e3c019fa84a432af3 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Wed, 13 Dec 2023 13:50:08 -0500 Subject: [PATCH 19/24] Update docs/custom-components-pkg.qmd Co-authored-by: Gordon Shotwell --- docs/custom-components-pkg.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index bd446617..d76d997a 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -59,7 +59,7 @@ Your component may look very different, but at the end of the day it just needs ::: {.callout-tip} ## What about an output binding? -This article touches on building an input component. However, it's also possible to build output components. The process and project structure is very similar to inputs. Throughout this article look for the "What about an output binding?" tips for more information on how to build an output binding. There is also a template for building an output binding in the `Shiny create` menu. +This article touches on building an input component. However, it's also possible to build output components. The process and project structure is very similar to inputs. Throughout this article look for the "What about an output binding?" tips for more information on how to build an output binding. You can generate an output template with `shiny create -t js-output`. ::: From 3ef2052d4bd51f23d695aa90ad66fc1a42da70ff Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Wed, 13 Dec 2023 13:53:35 -0500 Subject: [PATCH 20/24] Update docs/custom-components-pkg.qmd Co-authored-by: Gordon Shotwell --- docs/custom-components-pkg.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index d76d997a..15893c4a 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -65,7 +65,7 @@ This article touches on building an input component. However, it's also possible ## The quick version -If you just want to get up and running with the code, you can start with one of the available templates available with the `Shiny create` command and then run the commands provided after the template is created. +If you just want to get up and running with the code, you can start with one of the available templates available with the `shiny create -t js-react` command and then run the commands provided after the template is created. You can also see the full list of JavaScript extension templates with `shiny create -t js-component`. ```bash % Shiny create From e98b1a6f717fec7eae996700ad6c4147683fc065 Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Wed, 13 Dec 2023 13:56:02 -0500 Subject: [PATCH 21/24] No need to show full qa output when creating template beacuse new -t option handles choices for user. --- docs/custom-components-pkg.qmd | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index 15893c4a..6225881e 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -67,29 +67,6 @@ This article touches on building an input component. However, it's also possible If you just want to get up and running with the code, you can start with one of the available templates available with the `shiny create -t js-react` command and then run the commands provided after the template is created. You can also see the full list of JavaScript extension templates with `shiny create -t js-component`. -```bash -% Shiny create -? Which template would you like to use?: - Custom JavaScript Component -? What kind of component do you want to build?: - React component -? What do you want to name your component? -Name must be dash-delimited and all lowercase. -E.g. 'my-component-name' - fancy-color-picker -? Enter destination directory: - ./fancy-color-picker - -Setting up fancy-color-picker component package... - -Next steps: -- Run `cd fancy-color-picker` to change into the new directory -- Run `npm install` to install dependencies -- Run `npm run build` to build the component -- Install package locally with `pip install -e .` -- Open and run the example app in the `example-app` directory -``` - If you want to understand what's going on under the hood, read on! From 38a46fd238ee2994ab2f301a71b2908bbf4472ea Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Wed, 13 Dec 2023 13:59:36 -0500 Subject: [PATCH 22/24] Provide some context/ motivation for webcomponents --- docs/custom-components-pkg.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index 6225881e..c6911369 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -135,7 +135,7 @@ makeReactInput({ function ColorPickerReact(...) { ... } ``` -In here we declare the `tagName` of for our component. This name is used to generate the correct markup with python later. Under the hood `makeReactInput()` generates a [webcomponent](https://developer.mozilla.org/en-US/docs/Web/Web_Components) to hold our input. A webcomponent is a custom HTML element. The `tagName` provided here represents the name of that custom component we're generating. In this case we're registering the component as ``. +In here we declare the `tagName` of for our component. This name is used to generate the correct markup with python later. Under the hood `makeReactInput()` generates a [webcomponent](https://developer.mozilla.org/en-US/docs/Web/Web_Components) to hold our input. A webcomponent is a custom HTML element that allows us to bind custom markup and JavaScript logic to a point in our app by simply writing the custom tag into the app's HTML. The `tagName` argument provided here represents the name of that custom component we're generating. In this case we're registering the component as ``. ::: {.callout-note} This example uses the webcomponent based interface provided by the [`@posit-dev/shiny-bindings-react` package,](https://github.com/posit-dev/shiny-bindings/blob/main/packages/react/README.md) but if you want lower level access you can use the built-in class-based interface. See the [Shiny for R documentation](https://shiny.posit.co/r/articles/build/building-inputs/) for more details. From eb696569eec75c381ee95ec2f1f5a2d5fadc2ccb Mon Sep 17 00:00:00 2001 From: Nick Strayer Date: Wed, 13 Dec 2023 14:02:03 -0500 Subject: [PATCH 23/24] Move development workflow up to below the quick-start section --- docs/custom-components-pkg.qmd | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/docs/custom-components-pkg.qmd b/docs/custom-components-pkg.qmd index c6911369..f3d5ad87 100644 --- a/docs/custom-components-pkg.qmd +++ b/docs/custom-components-pkg.qmd @@ -68,6 +68,21 @@ This article touches on building an input component. However, it's also possible If you just want to get up and running with the code, you can start with one of the available templates available with the `shiny create -t js-react` command and then run the commands provided after the template is created. You can also see the full list of JavaScript extension templates with `shiny create -t js-component`. + + +## Development workflow + +While there are lots of ways to develop components with live-feedback (e.g. Storybook, dev servers like `vite`, etc) an easy way to develop a component with our package structure is to use the example app, an editable mode pip install, and the watch mode for our build step. We can do this with the following steps: + +1. Install the package in [“editable mode”](https://setuptools.pypa.io/en/latest/userguide/development_mode.html) with `pip install -e .` + +2. Run the bundler in watch mode with `npm run watch`. This will watch the `srcts` directory for changes and automatically rebuild the JavaScript when it detects a change. + +3. Run the example app in live-reload mode. If you're using VScode, the [Shiny for Python extension](https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) enables this automatically when pressing the run button above the app script. + +Now you can update your component JavaScript/python functions and your app will automatically reload with the changes. Happy developing! + + If you want to understand what's going on under the hood, read on! ::: {.callout-note} @@ -374,22 +389,6 @@ app = App(app_ui, server) ::: - -## Development workflow - - -Now that we’ve seen the files that make up the package, let’s talk about how to develop the component. - -While there are lots of ways to develop components with live-feedback (e.g. Storybook, dev servers like `vite`, etc) an easy way to develop a component with our package structure is to use the example app, an editable mode pip install, and the watch mode for our build step. We can do this with the following steps: - -1. Install the package in [“editable mode”](https://setuptools.pypa.io/en/latest/userguide/development_mode.html) with `pip install -e .` - -2. Run the bundler in watch mode with `npm run watch`. This will watch the `srcts` directory for changes and automatically rebuild the JavaScript when it detects a change. - -3. Run the example app in live-reload mode. If you're using VScode, the [Shiny for Python extension](https://marketplace.visualstudio.com/items?itemName=Posit.shiny-python) enables this automatically when pressing the run button above the app script. - -Now you can update your component JavaScript/python functions and your app will automatically reload with the changes. Happy developing! -