Wednesday, January 27, 2010

Is anybody interested in open-source tool like Silverlight Spy?

A few months ago I started to work on a Silverlight project. It was a business-line application, pretty much standard of that type. It was my first project in Silverlight. Anyway, soon I found this great tool called Silverlight Spy. It’s a tool for runtime inspection of Silverlight applications, something like Firebug but only for Silverlight. I was impressed with the software since it was very powerful. The tool costs around 99 EUR, which is not much for the value you get. However, as a passionate developer, I like to develop my own tools (during my free time of course:)). It was then the idea of similar open-source tool was born. I decided to develop a proof-of-concept application called Silverlight Buddy(now thinking of renaming it to Silverlight Inspector). Here’s the what I have done by now:

  • Intercepting Silverlight application before it’s displayed in browser
  • Injection of custom code logic into an Silverlight application  
  • Solved communication between Silverlight application and Silverlight Buddy tool. (both using COM and JavaScript)
  • Support for hosting DLR inside Silverlight applications (Just like in Silverlight Spy)
  • Very basic “Inspect Element”-like functionality

The app is not stable since it is intended only to be a proof-of-concept, written in a quick-and-dirty way. But as you can see, all the major issues/parts have been solved. There is still a huge amount of work to be done in order to make it a usable application. Now,I have never run open-source project, and to be honest, I don’t have time to. That’s why I thought there was somebody out there willing to continue to work on the project. I will probably be a committer myself, but don’t have time to devote fully to the project. If somebody is interested please write a comment.

Here are some screenshots of the app so far.

image

Notice the red border around “Search” textbox, it represents “Inspect Element” functionality as you move your mouse over the elements.

I hope someone will be willing to continue the work on this project so the effort I have made so far will not be wasted.

8 comments:

  1. Hi Edin,

    I'm interested in this app, but only giving it free not open-source.

    Nice app.

    ReplyDelete
  2. Very interesting... I'm an old WPF developer who 'grew up' on Pete Blois' Snoop app... I loved the managed injector style of inspecting the running apps. Would love to see a really robust and featureful Spy like app for SL!!

    Rob

    ReplyDelete
  3. This comment has been removed by a blog administrator.

    ReplyDelete
  4. I am developing a similar tool as well, but you have gone farther than I do in many aspects.
    Frank

    ReplyDelete
  5. I'm very interested to see you sources. Is it possible to send it or to download it somewhere?

    Thanks
    lsdisciples@hotmail.com

    ReplyDelete
  6. No reply at all since a month. :)

    Could you please tell more details on this

    •Injection of custom code logic into an Silverlight application
    -> How can you force your code to be "Scriptable" and being able to access to your class from javascript?

    •Solved communication between Silverlight application and Silverlight Buddy tool. (both using COM and JavaScript)
    -> ... So you are using a COM object to transfer the information from the SL app to your app ? Is it possible to give more details?

    Thanks
    lsdisciples@hotmail.com

    ReplyDelete
  7. Hey Edin,

    Just wanted a share an alternative way of injecting Silverlight assemblies. In case somebody finds it useful:

    http://anvaka.blogspot.com/2011/09/inject-code-into-silverlight.html

    ReplyDelete