Telerik Assembly Minifier

Thursday, June 10, 2010 by Miro Miroslavov | Comments 9

What is it?

Telerik Assembly Minifier is a tool that lets you extract only the controls’ classes and resources you need to use in your application development, thus significantly reducing the size of the assemblies. Using the Assembly Minifier you will achieve significantly better loading time when the XAP files containing the minified (optimized) assemblies are to be loaded on the client side.

Reducing (minfying) the size of Telerik Silverlight assemblies

In order to minify the assemblies, you should:

  1. Open the application at: http://minifier.telerik.com.
  2. Browse and upload Telerik Silverlight Assemblies, the ones that you want to optimize. See the tips at the bottom, for more information on uploading.
  3. After you select and upload the assemblies,the Assembly Minifier will automatically start processing and analyzing the files.
  4. Then, you will be able to select only the controls you will need in your application.
  5. As soon as the analyzing process finishes, you will be able to see the relative size of each control.The size is just for comparison purposes and does not mean that the output assemblies will have the exact same size as shown in the TreeListView.
  6. Once you finish the selection, you can click the Extract button.
  7. As soon the server processes the Extraction, you will be prompted to Save a ZIP file containing the minified assemblies.
  8. If you want to try the minified assemblies in an existing project:
    1. You should first remove the references to the old assemblies
    2. Clean up the Visual Studio Solution
    3. Add references to the newly created (minified) assemblies
    4. Build the Solution
  9. If you want to use the minified assemblies in a new project you should simply add reference to the newly created assemblies in the project. If you have troubles referencing the assemblies, you may need to check the assembly files for the Lock bit and unlock them if needed – right click on the file, go to Properties/Unlock assembly)

Here is how The Minifier looks like:

minifier

Tips for using the Assembly Minifier

  • To get the best results from using the Assembly Minifier, you should upload all referenced assemblies (as well as the one that contains the controls you will need) – so that they will be minified according to your selection. For example if you want to use only RadDocking from Telerik.Windows.Controls.Docking.dll, you should also upload Telerik.Windows.Controls.dll and Telerik.Windows.Controls.Navigation.dll and select only RadDocking control. This way you will get minified versions, of all referenced (above mentioned) assemblies, specifically for RadDocking. In this example the output assembly - Telerik.Windows.Controls.dll should be around 400KB (compared to 1100KB) and the Telerik.Windows.Controls.Navigation.dll should be 230KB (compared to 840KB).
  • Some controls are using parts that are not compulsory, so you should take care and select them manually. For example RadRibbonBar frequently uses the RadRibbonButton. To include RadRibbonButton in the minified assembly, you should select it.
  • For the moment you can NOT optimize RadChart, DataVisualization and Themes assemblies, so you will not be allowed to upload them.

Thank you in advance for your feedback

Since this version of Telerik Assembly Minifier is beta release, we encourage you to use Minified assemblies only for testing purposes and NOT in production.

All comments, feedback, feature requests and bug reports are welcome. You can share your feedback in the public forum.

In Addition

Good to know is that the Telerik Assembly Minifier client application uses minified assemblies, containing only RadTreeView, RadWindow, RadButton and RadUpload. After minifying we got 400KB xap file out of 800KB.

Download

RadControls for Silverlight and over 300 examples

9 Comments

  • J. 10 Jun 2010
    I want/need this for WPF!
  • Ben Hayat 10 Jun 2010
    First a couple of simple questions, before diving further:
    a) By RTM time, will this product be available as part of Telerik SL package to reside on our development machine, or do we have to upload all these assemblies at all time (don't mind it during beta, but production, is something else).

    b) Does this only work with Telerik assemblies and controls or will it work with any vendor's including MS?

    Thanks!
    ..Ben
  • Miro Miroslavov 10 Jun 2010
    @J. - We've considered this, but i can not say exact date, when will be available.
    @Ben -
    a) We've planned different ways of delivering this service, but can not give you which one will be implemented till the official release. If you have something in mind, we'll be happy to hear it? :-)

    b) Till now 'Yes, The beta release version works only with Telerik assemblies'.

    Greetings,
    Miro Miroslavov.
  • Ben Hayat 10 Jun 2010
    If you have something in mind, we'll be happy to hear it? :-)

    Miro, send me an email (with anyone else you want to include in CC) and I'll discuss it in private.
    Ben at MicroIntelligence dot com
  • Paulo 26 Jul 2010
    Why don't you partition the dlls by funcionality?

    For example: split GridView control into 3 dlls: one for dilsplaying, another for filtering and the other for editing and validation.

    Downloading anything greater than 300Kb is very painfull.
    You can take for grant that almost anybody needs filtering and edition when the grid comes up.

    Bests

  • Miro Miroslavov 26 Jul 2010
    Hi Paulo,

    In my opinion - splitting each assembly into several new will be painful to the developers - image you need to reference for example 15-20 per project for each control or feature from bigger controls.

    Will it be better for you, if you can choose, using the Minifier, which GridView features you need and after that get only the needed ones in one assembly with smaller size?

    We do this with the RadChart - you can choose from the main chart types.

    Regards,
    the Telerik team.
  • Supal Patel 01 Nov 2010
    Hello,
       I am working in Silverlight project and i want to reduce size of XAP.so i used Telerik Assembly Minifier but when i select Assembly then to much time is required and only process is started but result is
    not come after 20 minutes.So what is a problem in it??i don't have any idea for it.If you have any solution then please tell me.
  • Miro Miroslavov 01 Nov 2010
    Hello Supal,

    Since we'll need some more information, can you please open a new support ticket or write in the Assembly Minifier forum with the detailed information about the problem. It will be very helpful if you send us the MinifyInfo file and some information about how you use the controls.

    Thank you for your cooperation.

    Regards,
    Miro Miroslavov,
    The Telerik Team
  • jason 22 Feb 2011
    I love that you answered a concern like xap files size with Assembly Minifier. But I am finding the whole process totally inefficient when building my <a href="http://www.inin.com/ProductSolutions/Pages/Interaction-Dialer.aspx" rel="follow">automated dialing application</a>. I am not complaining.  I love that the tool is beta and absolutely love that it is free.  I am just anxious for more features in the next release.  But I know that greatness takes time.

Add comment

  1. Formatting options
       
     
     
     
     
       
  2. (optional, emails won't be shown on public pages)
  3. (optional)