How to optimise my prototype for sharing

I’ve had a number of really helpful responses on a number of topics in the past so I thought that I would give this one a shot as I’m not quite sure on the best way to proceed.

How can I optimise my Axure file to reduce the file size?

Here’s some context - my prototype contains pages that are tasks for different services on the platform we are building, all of which have common pages and functionality. As the number of services that we do discovery for grows, so did the size of my file.

To try and combat this I moved all common pages into a single file whose AxShare link I point to from all the others but there are some rendering issues with this approach. As a result, I have the below files with their sizes listed:

  • Services tasks 1 - 5.8MB
  • Services tasks 2 - 5.7MB
  • Services tasks 3 - 2MB
  • Services tasks 4 - 4.6MB
  • Services tasks 5 - 6.2MB
  • Common pages - 6.8MB

I don’t know whether I should consolidate all my files into one, which would give me a file size in excess of 30MB leading to slow rendering on AxShare for users; or keep them separate and try to find a solution with the way that I am going.

Are there certain things that are dead certs for increasing the file size, any quick fixes for reducing them? All that I have derived on my own is that:

  • Masters help reduce repetition and reduce file size
  • Dynamic panels massively add to file size
  • Interactions (anything that required ‘computing’) also added to file size

There’s no such thing as a stupid comment or answer and thank you in advance!

Hmmm, it sounds like you’re running into performance issues with your prototype in the browser. The performance of a prototype stems more from the number of widgets on the page, rather than the overall file size (e.g. a single page that has 5MB of content may be slower than a file with the same file size split across many pages). If you’re seeing that specific pages in your files are slow, then we’d recommend keeping an eye out for the following:

  1. Large images–these can slow down a prototype if there are a lot of them. To help reduce their impact, you can optimize them by right-clicking them and choosing “Optimize Image”. As a heads up, this will remove any transparency that the images had and may reduce their quality a bit.

  2. Large repeaters–since each row duplicates the widgets that you place into it, large repeaters can contribute to performance issues if there are many rows or if each row has a lot of widgets (especially dynamic panels).

  3. Large tables–Each cell counts as an object on the page, so the larger the table, the more widgets you’ll have on the page.

  4. As you’ve noted, large dynamic panels or panels with many states can contribute to performance issues if the states contain a lot of content (or if there are many panel states with nested panels with many states, etc…).

  5. If the file at any point had adaptive views, then keep an eye out for unplaced widgets that are unplaced in all views; these may not be visible on the canvas, but still add “weight” to the page and can impact the page performance. You can check for these in the Outline pane by setting the filter to show unplaced widgets, which would then appear in red.

Hopefully those help! :slight_smile:

1 Like

Hi Alyssa,

Thanks a lot for your reply - it’s really helpful having a bit more insight into how Axure works. I don’t have many of the above but there could be a lot of widgets stemming from lots of masters. Would they have an effect? Generally speaking, would you recommend to keep all the parts in one file?

Hmm, if there are a lot of masters on the page then these could impact the performance of the page and make it “heavy”, particularly if the masters contain a lot of widgets. Generally, anything that ups the widget count can make a page widget-heavy and impact how fast it runs (we give a ballpark estimate of about 500 widgets per page to be safe).

As far as whether to break up a file into multiple projects or keep it all in one, I believe this would mostly affect large files. If for example you had a file with a very large file size that takes a long time to publish or that exceeds the publishing limit on Axure Share (400MB), then splitting the project into smaller file sizes should help. Pages that are widget-heavy would still have the same performance issue though since the widget count on the page wouldn’t have changed when splitting up the project; in those cases, reducing the number of widgets on the page either by splitting them into a couple of pages or by consolidating widgets (e.g. in a case where multiple widgets are used where just one could work) should help. Hopefully that helps! :slight_smile: