Symbols and performance


(Dean) #1

I have a dashboard page that I can barely edit at this point. There are a lot of symbols. Am I better off using rectangles than a symbol?

For example if you have 20 buttons you can use 1 symbol and repeat it 20 times or to use 20 rectangles.

I’ve been creating components in different documents and moving them over to the main hype file.

sometimes it takes 10 minutes to exit a symbol or change timel


(Jonathan Deutsch) #2

20 symbols doesn’t sound like a lot but it may depend on their complexity. Symbols do incur a performance overhead definitely, so the solution may be to not use them… feel free to attach a zip of your .hype document and I’d be happy to take a closer look to see if it is symbol usage or something else.


(Dean) #3

Wow, thought the file would be too large. Thank you!


(Dean) #4

Oh, maybe it didn’t upload.


(Dean) #5

BTW 20 symbols was just an example. There are many more than that in some cases.


#6

This will definitely be the reason but maybe the solution may or may not include changing them the rectangles. Just a heads up. BTW to upload into the forums the file(s) need to be less than / around 3MB. As you’ve used Dropbox you’ve found the alternative :slight_smile:

Looks like Jonathan has this covered so I’ll step out :wink:


(Jonathan Deutsch) #7

Wow… from what I can gather that document has ~200 symbols with ~700 elements being instance of those symbols, and the document itself appears to have ~3500 elements. Yet I will say your document is very well organized :slight_smile:.

The app is definitely spending most of the time doing symbol-related activities. It is funny how some operations (entering/exiting symbols) take forever (10-20 minutes), but in other cases the app is quite snappy.

I don’t know if I have great recommendations for this document. Avoiding symbols will be a performance benefit. But the document is still quite large. If you have individual pieces in separate .hype documents, you may find that you could create a “master” page using iframes/HTML Widgets instead so there isn’t a single Hype document that grows to be so large. Also if you can avoid too much nesting/grouping that may help a little.