[in the process of updating this for Silverlight 2.0 beta]
Come with me on my journey of discovery of the new SilverLight technology.
I’ll be learning by doing. I’ll create a full blown SilverLight application from ground up and share every step of the journey with you.
Everything i learn i will post right here in my blog and i’ll file it under the category “Project SilverLight 1.1”
The “End Goal” of this project is to recreate iTunes as a silverlight / ajax.asp.net application
Below is a picture of Apple’s iTunes application:
The “project silverlight 1.1” is currently at this point, note that the wireframe is shown in a “standard metallic” theme taken from step (18) below. [clicking the picture will take you to the working sample]
Here is another version of the wire-frame using the “5 minute wooden” theme taken from step (18) below. [clicking the picture will take you to the working sample]
Index of all my posts relating the the development of the iTunes like application
I talk about the scope of the project and the reasons for the project
The title says it all. A high level overview of what im hoping to build and get out of this project.
A quick look at iTunes and what i want to eventually build.
I need to prove to myself that i can accomplish the iTunes app using three types of components (general html controls, ajax asp.net controls and silverlight controls)
I want true async page part refreshes (using update panels) rather than full page refreshes.
Prove that the communication pathway’s between controls and page can actually be handled by the technologies im using.
Wireframe of the proposed iTunes like application
Prototype the Base web page with place holders for all the proposed controls.
I walk through my first SilverLight control, the media player control. I create it using blend and embed it into the webpage created from posting (8) above.
In this post i will create the media display, the area where we give feedback on what song is playing and the point that the song is at.
In this post i create 2 new controls, the search control and the view control. I did both because i was so excited from the previous post i worked twice as hard to get this post complete!
In this post i tackle the 3 controls (3, 11 and 13). The are based on similar styles hence why i did them together.
I had to throw this post in before completing the other controls. I really wanted to cleanup the wireframe to make it look more like iTunes. The end result gave me fuel to continue. My dream of an online version of iTunes is so much closer than before this post!
In this post i put aside my silverlight tools and went for the ajax toolset to create the grid control. I try to explain my reasonings behind choosing ajax over silverlight, this is turning into a full-filling experience.
In this post i tackle the “album swisher” this is the coolest control in the app and i had fun making it. I started having no idea how i was going to do this and ended up an hour later finishing it! What a great technology enabler silverlight is!
In this post i cover the “left navigation” control. Very simple and done much like the grid control in that it’s a client side html rendering framework.
In this post i tackle the remaining 3 GUI controls. They are simple yet important to the final appearance of iTunes.
In this post i prove that i can plug in data from external third party sources. This example shows me reading songs from LastFM
In this post i continue on explaining options available to me for making webservices calls. I wanted to further clarify my decision on using webservices and the method i chose (from posting 19 above).
In this post i discuss the tasks that need to be completed to get this project out the door. In other words i’ve created the “project plan” for phase 1 of “iTunes as a silverlight/ajax.asp.net application”
In this post i create a control dedicated to doing all downloading of assets required by iTunes. It has a cool animation that plays whilst it downloads stuff, and it also plays light music.
Other post’s not directly related to the iTunes app development but may be interesting
I answer 3 commonly asked questions asked of me.
I talk about where the project is at and where it’s still yet to go
What i needed to do to get my source code to work in the new Release Candidate 1 (RC1)
Research into the competition
This is a list compiled of some of the best known music players out there. It’s just a list and future postings will cover in detail the actual music players.
Source code for the prototype and future builds (currently development build is available) can now be found on CodePlex. I have moved it in there in preparation for the build part of this project. CodePlex is a great source code repository from a collaboration and management perspective. It will make managing the code deployment so much easier.