[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]

Enjoy AdvertBoy/LiquidBoy!

Index of all my posts relating the the development of the iTunes like application

1) Project SilverLight 1.1 – the beginning

I talk about the scope of the project and the reasons for the project

2) Project SilverLight 1.1 – Inception & High level design

The title says it all. A high level overview of what im hoping to build and get out of this project.

3) Project SilverLight 1.1 – Prototype – Part 1

A quick look at iTunes and what i want to eventually build.

4) Project SilverLight 1.1 – Prototype – Part 2

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)

5) Project SilverLight 1.1 – Prototype – Part 3

I want true async page part refreshes (using update panels) rather than full page refreshes.

6) Project SilverLight 1.1 – Prototype – Part 4

Prove that the communication pathway’s between controls and page can actually be handled by the technologies im using.

7) Project SilverLight 1.1 – Prototype – Part 5

Wireframe of the proposed iTunes like application

8 ) Project SilverLight 1.1 – Prototype – Part 6 – ASP.NET BasePage

Prototype the Base web page with place holders for all the proposed controls.

9) Project SilverLight 1.1 – Prototype – Part 7 – Media Playback Control

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.

10) Project SilverLight 1.1 – Prototype – Part 8 – Media Display control

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.

11) Project SilverLight 1.1 – Prototype – Part 9 – View + Search Controls

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!

12) Project SilverLight 1.1 – Prototype – Part 10 – MinMax Control + StatusBar Controls

In this post i tackle the 3 controls (3, 11 and 13). The are based on similar styles hence why i did them together.

13) Project SilverLight 1.1 – Prototype – Part 11 – wireframe page cleanup

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!

14) Project SilverLight 1.1 – Prototype – Part 12 – grid control

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.

15) Project SilverLight 1.1 – Prototype – Part 13 – album control

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!

16) Project SilverLight 1.1 – Prototype – Part 14 – left nav control

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.

17) Project SilverLight 1.1 – Prototype – Part 16 – iTunes Themed

I take a short break from control creation and talk about themeing. With expression/silverlight and ajax.asp.net a level of themeing can now be achieved using simple dhtml/javascript skills! Amazing!!

18 ) Project SilverLight 1.1 – Prototype – Part 17 – Top Drop Menu, Title & Status Bar

In this post i tackle the remaining 3 GUI controls. They are simple yet important to the final appearance of iTunes.

19 ) Project SilverLight 1.1 – Prototype – Part 18 – Using third party webservices as a source of data

In this post i prove that i can plug in data from external third party sources. This example shows me reading songs from LastFM

20) Project SilverLight 1.1 – Prototype – Part 18 Continued – Different methods of calling webservices

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).

21) Project Silverlight 1.1 – Project Plan & Next steps

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”

22 ) Project SilverLight 1.1 – Prototype – Application Downloading Control

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

1) Project SilverLight 1.1 – General Rant – Q & A

I answer 3 commonly asked questions asked of me.

2) Project SilverLight 1.1 – General Rant – Q & A

I talk about where the project is at and where it’s still yet to go

3) Project SilverLight 1.1 – Intermission – Making it work with the Release Candidate (Silverlight RC)

What i needed to do to get my source code to work in the new Release Candidate 1 (RC1)

Research into the competition

1) A list of music players currently made popular by the masses

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.