Skip to main content

Dance API - Documentation

Document Description

The development documentation is designed to outline the development method and to explain some technical aspects.

Project Description

The Dance API “user endpoint” is meant for developers who want to build apps that can utilize all end user aspects of the dance technology.

Features & Functionality

Authentication

Connect with Calm ID to handle authentication, third party developers will also be able to connect with their existing user data but will be required to also use Calm ID.

Display

The display feature allows the app to display a variety of effects

Single Pixel

This feature will turn the phone screen into a single pixel meaning one color can be displayed on the entire screen.

Multi Pixel

This feature will split the screen into as many pixels as possible, enabling animation and more precise coloring of the screen. We may opt to update the single pixel feature rather than create a separate one.

Video

This will be a simple video player but without any controls for the user to play or pause. This may also be used in the future should we want to implement an ad feature. Any video will need to be chopped in the cloud and played on the device to create a mesh feature.

Emojis

This feature can be accessed by the user when navigation is enabled (meaning when we are not using the screen). The user can select an emoji or gif and hold up their phone (e.g. kisses gif)

Lyrics

Connect to Calm Music API to deliver lyrics, the third party can display in simple text or in a karaoke form.

Interactive

This endpoint will allow the developer to create or choose from a library of interactive games, trivia and other activities

Camera

The user can open their camera, add a filter and share to social media right from inside the Dance app. This will prevent us from losing user participation.

Music

This is the home of the artist. It is customizable to each artist and can be “downloaded” as a stand alone app.

Artists

Get all data about one or many artists

Media

Find the music, videos and all that is related to the artist.

Merch

Buy merch from the artist and pick it up on the way out or have it shipped to you.

Lyrics

Connect to Calm Music API to deliver lyrics, the third party can display in simple text or in a karaoke form.

Arena

This is custom to the arena; each arena can choose how they sell things and what features are available to the user.

Shops

Find shops that are located in the arena and get indoor directions or place an order and have it brought to your seat.

Map

Need to find the washroom? Open the indoor floor map.

Events

The arena can promote upcoming events.

Events & Tickets

The endpoint will facilitate events and buy tickets.

Commerce

The commerce endpoint will facilitate third parties to sell merchandise, subscriptions and more.

Preferences

A single and convenient place to manage every aspect of the app.

Account

The user can update their name, email, password and any account related information such as payment should we add the e-commerce feature.

Notifications

The user can set their notification preferences.

Help Center

If the user has an issue they can find articles to help them or send a message to the support team.

User Guide

If a user knows what they are trying to do but doesn’t know how, they can take a guided tour that will detail how and what to do.

Data

The data structure and all data information can be found in the Data section of the Dance Project - Development Documentation.

Dance

For the Dance app, our strategy is straightforward. We will first develop a single screen or in Flutter terms a “widget”. This will check for a data change in the database that relates to the color. Should there be a change, it will display that color on the entire screen. We call this widget “Pixel”. It is important to note that the pixels is only going to be allowed to receive feedback from Dance-console if there is a current live session. Once we have accomplished this (and it should be easy), we will then put Dance development on hold to complete Dance Console. We will then return to add authentication, preferences, navigation and, should we have time and budget left, development of additional features (e.g. camera filters, ads, etc.). For a roadmap with additional details see User Development.