Configuring Dalliance

There are many options you can configure when creating a Browser object.
chr/viewStart/viewEnd
These options configure the default view when the browser starts for the first time.
    chr:          '22',
    viewStart:    30000000,
    viewEnd:      30030000
sources
An array of source or track configurations (see the source configuration guide).
maxViewWidth
The maximum width of the visible region, configured in bases. Default is 500000.
pageName
The id of an element on the page whose contents will be replaced with the Dalliance instance when it starts up.
cookieKey
String used as a key for session persistance. It should be unique amongst all Dalliance instances served from a given domain. Not relevant if noPersist is true.
coordSystem
This defines the reference genome coordinate system for the browser. It's principally used when querying the DAS registry to find relevant datasources. It is also needed to correctly re-map data between coordinate systems. A typical configuration looks like:
coordSystem: {
    speciesName: 'Danio rerio',
    taxon: 7955,
    auth: 'Zv',
    version: 9,
    ucscName: 'danRer7'
}
The speciesName field can be a human-readable label, and isn't used when querying the registry. taxon should be an integer identified from the NCBI Taxonomy auth and version should, as far as possible, match authority and version strings used in the DAS Registry. The ucscName field is optional, but should be filled in with the UCSC genome browser name of the assembly if it is defined. This enables track-hub support to work properly.
setDocumentTitle
If true, attempt to change the title of the web browser window to reflect the species name being displayed. Generally not wanted for embedded browsers.
prefix
URL from which static browser resources should be downloaded (CSS, images, help pages, and the Javascript "web worker" code). By default, this is http://www.biodalliance.org/release-X.Y code where X.Y represents the current major and minor release numbers. The uiPrefix option is a (deprecated) synonym.
maxWorkers
The maximum number of web-workers to us when fetching data. If set to 0, the web worker system is disabled and all data fetching will be performed on the main UI thread. Using workers generally improves responsiveness but may increase resource usage.
noPersist
Fully disables Dalliance's built-in session management. When the page is reloaded, everything will be reset to the configuration passed to the Browser constructor.
noPersistView
Disable storing the current location in the session-management system. All other options (notably, current track configurations are preserved). This is useful if you are embedding little feature-centric browser instances into a larger application (e.g. a database with one page per gene).
noDefaultLabels
Do not add the standard "tier tab" labels. Intended for very lightweight embedded browser instances/
tierBackgroundColors
Array of CSS color strings used as background colors. Dalliance cycles through the available colours in order. In the special case of this property being set to null, tiers will have transparent backgrounds. This is only recommended if there's a specific reason for letting the background show through.
maxHeight
Maximum height, in CSS pixels, that the Dalliance component can grow to (default 500).
fullScreen
Attempt to fit the Dalliance component to the containing window, making allowances for other content on the page.
rulerLocation
The default location of the vertical guideline. Valid values are center, left, right, or none.
reverseScrolling and reverseKeyScrolling
These control the default direction of scrolling using trackpads and keyboards respectively (can also be configured in the settings panel).

Configuring a track-hub

As of Dalliance 0.9, there is rudimentary support for UCSC-style track hubs, so long as they're server over HTTP and support CORS. These can be configured with:
hubs: ['http://www.biodalliance.org/datasets/testhub/hub.txt', 
       'http://ftp.ebi.ac.uk/pub/databases/ensembl/encode/integration_data_jan2011/hub.txt']
...and will appear as extra tabs in the track-addition user interface.

Configuring coordinate-system mappings

Dalliance can do on-the-fly coordinate system mapping. The set of available mappings is configured by the chains property, which takes a map of mapping names to mapping definitions, e.g.:
    chains: {
      hg18ToHg19: {uri: 'http://www.biodalliance.org/datasets/GRCh37/hg18ToHg19.bb',
                   type: 'bigbed',
                   coords: {
                        speciesName: 'Human',
                        taxon: 9606,
                        auth: 'NCBI',
                        version: 36
                   }
                  }
    }
You can use arbitrary strings as names for mappings. When configuring a track in the sources array, you can specify which mapping to use, e.g.:
sources: [
  {name: "My track",
   bwgURI: "http://some/old.data.bb",
   mapping: 'hg18ToHg19'}
]
Each mapping definition has the following properties:
uri
URI to access alignment data.
type (optional)
Currently supported values are "bigbed", which specifies a bigBed-encoded version of the chain file format, produced by the chain2bed utility. If type is not specified, alignment-DAS is assumed. Alignment DAS support is deprecated as of Dalliance 0.12. Please contact Thomas Down for more details if you really need it.
credentials (optional)
Support credentials when accessing the alignment data.
coords (required)
The coordinate system that this mapping is from (it is assumed to be) to the default coordinate system of the browser. This is important, because it controls what gets presented if the user is prompted to choose a coordinate system when the user manually adds data. If possible, the ucscName of the coordinate system should also be specified -- if so, coordinate system mapping will be automatically supported when interacting with track-hubs which provide data for more than one genome assembly.

Fine-grained control over the default UI

Most of the UI can be disabled (it's also possible to run the Dalliance track component without any UI, but that should probably be documented elsewhere).