# Workflow for Creating Data 360 Data Kits with Tableau Next Assets

Creating and packaging a Tableau Next templated app is similar to creating and packaging any app with second-generation packaging (2GP), but there are a few key differences in the process. You still use Salesforce CLI commands and scratch orgs, but with Data 360, you must add some features to a data kit before packaging. Then you retrieve that metadata into a Salesforce DX project and move that project to a GitHub repository. Once there, other developers can clone the project, deploy the data kit metadata to their scratch org, and continue customizing. When development is complete, you create your app template, package it up, and distribute it.

Make sure you have completed the [Workflow for Tableau Next Scratch Orgs](/docs/analytics/tableau-next-isv-dev/guide/tn-scratch-org-workflow.md) before starting this workflow.

## Create a standard data kit

- In the scratch org, create your Data 360 elements: data streams, data mappings, calculated insights, streaming or batch data transforms, and so on. To know what Data 360 features are available for packaging, see [Data 360 Extensibility Readiness Matrix](https://developer.salesforce.com/docs/data/data-cloud-ref/guide/c360a-api-isv-readiness-data.htm).
- In the Data 360 UI, create a standard data kit and add the Data 360 features that you created to that data kit. See [Create a Data Kit](https://help.salesforce.com/s/articleView?id=sf.c360\_a_data_stream_bundle_package_kits.htm).
- Review the publishing sequence for the data kit.

## Retrieve the data kit metadata into the project

- In your scratch org, from Data Cloud Setup, click **Data Kits**.
- Select the data kit, and then click **Download Manifest**. The `package.xml` file that you downloaded contains all the metadata entities related to the data kit.
- Use this `package.xml` file in your Salesforce DX project to retrieve the data kit metadata. From the CLI, use the command `sf project retrieve start --manifest package.xml` to pull the data kit metadata from the scratch org into the project that you created. See [Retrieve Source From the Scratch Org to Your Project](https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_pull_md_from_scratch_org.htm). After the command completes, new project folders that contain the data kit metadata appear in your project.
- Upload the entire project to GitHub or any source control system. Another developer can then download that project, deploy the data kit into their scratch org, and modify it. For example, that developer can add a new data stream to the data kit. This workflow enables multiple developers to work on the same data kit.

## Deploy and test the data kit metadata in your scratch org

- From your project directory, run the `sf project deploy start` command to deploy the components listed in the `package.xml` file. See [`project deploy start`](https://developer.salesforce.com/docs/atlas.en-us.sfdx_cli_reference.meta/sfdx_cli_reference/cli_reference_project_commands_unified.htm#cli_reference_project_deploy_start_unified).
  ```bash
  `sf project deploy start --manifest package.xml`
  ```
- The data kit is now installed. You must also deploy the data streams, data models, calculated insights, and other data kit elements to the second scratch org before you can use them. See [Deploy a Data Stream from a Data Kit](https://help.salesforce.com/s/articleView?id=sf.c360\_a_install_package_kit.htm).
- After deploying, open the second scratch org to verify the data kit and its data stream bundles, data models, calculated insights, and other components.
- A second developer can create a data stream in their scratch org and add it to the data kit. They then retrieve the metadata into their project and upload it to GitHub so other developers can continue working.

## See also

- Second-Generation Managed Packaging Developer Guide: [Second-Generation Managed Packages](https://developer.salesforce.com/docs/atlas.en-us.pkg2\_dev.meta/pkg2\_dev/sfdx_dev_dev2gp.htm)
- Data Cloud Developer Guide: [Packages and Data Kits](https://developer.salesforce.com/docs/platform/data-cloud-dev/guide/packages-data-kits.md)
