{"id":51311344,"url":"https://github.com/plotly/dash-component-boilerplate","last_synced_at":"2026-07-01T04:03:35.723Z","repository":{"id":38791755,"uuid":"143215395","full_name":"plotly/dash-component-boilerplate","owner":"plotly","description":"Get started creating your own Dash components here.","archived":false,"fork":false,"pushed_at":"2026-05-14T17:44:04.000Z","size":301,"stargazers_count":293,"open_issues_count":54,"forks_count":196,"subscribers_count":42,"default_branch":"master","last_synced_at":"2026-05-14T19:29:44.306Z","etag":null,"topics":["dash","plotly-dash","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/plotly.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"custom":"https://plotly.com/products/consulting-and-oem/"}},"created_at":"2018-08-01T22:39:43.000Z","updated_at":"2026-05-14T17:43:58.000Z","dependencies_parsed_at":"2024-06-07T18:40:13.307Z","dependency_job_id":"4621ec34-ac1d-4614-af2f-17d9a2422b38","html_url":"https://github.com/plotly/dash-component-boilerplate","commit_stats":{"total_commits":192,"total_committers":37,"mean_commits":"5.1891891891891895","dds":0.5677083333333333,"last_synced_commit":"425fcc0c519baca17db136e2b8ec8518641a5208"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/plotly/dash-component-boilerplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plotly%2Fdash-component-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plotly%2Fdash-component-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plotly%2Fdash-component-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plotly%2Fdash-component-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/plotly","download_url":"https://codeload.github.com/plotly/dash-component-boilerplate/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plotly%2Fdash-component-boilerplate/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34992074,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-01T02:00:05.325Z","response_time":130,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dash","plotly-dash","python"],"created_at":"2026-07-01T04:03:35.158Z","updated_at":"2026-07-01T04:03:35.715Z","avatar_url":"https://github.com/plotly.png","language":"Python","funding_links":["https://plotly.com/products/consulting-and-oem/"],"categories":[],"sub_categories":[],"readme":"# Dash Component Boilerplate\n\nThis repository contains a [Cookiecutter](https://github.com/audreyr/cookiecutter) template to create your own Dash components.\n\n- New to Dash? Check out the [official Dash Documentations](https://dash.plotly.com)\n- If it's the first time creating a Dash component, start with our [React guide for Python developers](https://dash.plotly.com/react-for-python-developers)\n- Need help with your component? Create a post on the [Dash Community Forum](https://community.plotly.com/c/dash)\n\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://dash.plotly.com/project-maintenance\"\u003e\n    \u003cimg src=\"https://dash.plotly.com/assets/images/maintained-by-plotly.png\" width=\"400px\" alt=\"Maintained by Plotly\"\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\n\n## Usage\n\nTo use this boilerplate:\n\n1. Install the requirements:\n    ```\n    $ pip install cookiecutter\n    ```\n   [Node.js/npm is also required.](https://nodejs.org/en/)\n2. Run cookiecutter on the boilerplate repo:\n    ```\n    $ cookiecutter gh:plotly/dash-component-boilerplate\n    ```\n3. Answer the questions about the project.\n    - `project_name`: This is the \"human-readable\" name of your project. For example, \"Dash Core Components\".\n    - `project_shortname`: is derived from the project name, it is the name of the \"Python library\" for your project. By default, this is generated from your `project_name` by lowercasing the name and replacing spaces \u0026 `-` with underscores. For example, for \"Dash Core Components\" this would be \"dash_core_components\".\n    - `component_name`: This is the name of the initial component that is generated. As a JavaScript class name it should be in PascalCase. defaults to the PascalCase version of `project_shortname`.\n    - `jl_prefix`: Optional prefix for Julia components. For example, `dash_core_components` uses \"dcc\" so the Python `dcc.Input` becomes `dccInput` in Julia, and `dash_table` uses \"dash\" to make `dashDataTable`.\n    - `r_prefix`: Optional prefix for R components. For example, `dash_core_components` uses \"dcc\" so the Python `dcc.Input` becomes `dccInput` in R, and `dash_table` uses \"dash\" to make `dashDataTable`.\n    - `author_name` and `author_email`: for package.json and DESCRIPTION (for R) metadata.\n    - `github_org`: If you plan to push this to GitHub, enter the organization or username that will own it (for URLs to the project homepage and bug report page)\n    - `description`: the project description, included in package.json.\n    - `license`: License type for the component library. Plotly recommends the MIT license, but you should read the generated LICENSE file carefully to make sure this is right for you.\n    - `publish_on_npm`: Set to false to only serve locally from the package data.\n    - `install_dependencies`: Set to false to only generate the project structure.\n4. The project will be generated in a folder named with your `project_shortname`.\n5. Follow the directions in the generated README to start developing your new Dash component.\n\nInstalling the dependencies can take a long time. They will be installed in a\nfolder named `venv`, created by virtualenv. This ensures that dash is installed\nto generate the components in the `build:backends` script of the generated\n`package.json`.\n\n\n## Advanced customization\n\n### Shared cache groups for async chunks\n\nShared async chunks for code that repeats across multiple async chunks is already supported through our custom `webpack.config.js` optimizations. You can leverage it by manually the path of `{{cookiecutter.project_shortname}}-shared.js` to `_js_dist` inside `{{cookiecutter.project_shortname}}/__init__.py` (as well as the associated external URL).\n\n## More Resources\n\n- Found a bug or have a feature request? [Create an issue](https://github.com/plotly/dash-component-boilerplate/issues/new)\n- Watch the [component boilerplate repository](https://github.com/plotly/dash-component-boilerplate) to stay informed of changes to our components.\n- To get a feel for what's involved in creating a component, read the [README.md generated by this cookiecutter](%7B%7Bcookiecutter.project_shortname%7D%7D/README.md)\n- Want something more visual? Check out [this asciinema](https://asciinema.org/a/393389) of how to create a dash component from this boilerplate.\n- Examples of Dash component libraries include:\n    - [`dash-core-components`](https://github.com/plotly/dash-core-components)\n    - [`dash-html-components`](https://github.com/plotly/dash-html-components)\n    - [`dash-cytoscape`](https://github.com/plotly/dash-cytoscape)\n    - [`dash-deck`](https://github.com/plotly/dash-deck)\n    - [Curated community-made components](https://plotly.com/dash-community-components/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplotly%2Fdash-component-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplotly%2Fdash-component-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplotly%2Fdash-component-boilerplate/lists"}