Start by creating a blank dashboard using the sem CLI:
$ sem create dashboard demo-deployment Dashboard 'demo-deployment' created.
Open the dashboard configuration:
$ sem edit dashboard demo-deployment
At this point you have the dashboard definition open in your default editor. It looks something like this:
apiVersion: v1alpha kind: Dashboard metadata: name: demo-deployment title: demo-deployment id: d0013e29-e4f9-43a6-9322-b5d843accd7d createtime: "1543855505" updatetime: "1543855839" spec: widgets: 
Recall that deployment is typically a separate pipeline which gets triggered by a promotion. Because of that, to make the dashboard display deployment activities, we need to use the pipelines list type of a dashboard.
The minimal configuration would be as follows:
spec: widgets: - name: Deploys to production type: list_pipelines filters: pipeline_file: .semaphore/production-deployment.yml project_id: 5e99069f-0be6-4b60-85a1-4cbcfc5f339a
With the configuration above, dashboard will display all activities in the
.semaphore/production-deployment.yml pipeline on any branch.
To find the ID of your project, execute
sem get projects, then
sem get project <projectname>.
That's it! Once you save the file and exit your editor, sem will automatically update the dashboard definition. When you open Semaphore, you will find the link to your dashboard in the sidebar on the left-hand side.
A dashboard can apply additional conditions and display data from more than one source. For more information, consult the dashboard reference documentation.