This document discusses the architecture of the Echoes Media Player, which is built using Backbone.js. It describes how the app is broken into smaller pieces, including the Model, View, and Router. The Model manages the data and state. The View displays UI and gets/sets data from the Model. The Router handles navigation and application flow. It also discusses challenges around communication between components, rendering collections, and transitions between views.