question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Support for generating symbol masters and placing instances

See original GitHub issue

Thanks for sharing the project. It seems like an approach that makes a lot of sense when it comes to building complex design systems.

I wanted to share a bit about my workflow and a proposal for how this project could work with symbols.

I have been building a design system that uses Sketch symbols to provide various primitives, such as buttons, fields, checkboxes, containers. The users of this system make a new copy of a file containing all the symbol masters for each project they start. They use the symbols in it to compose their layouts.

Almost all of the symbol masters have 2 versions: a normal version and a “measurement” version. The measurement version has @ appended to the symbol name and contains transparent colored rectangles that represent the margins and paddings of the symbol:

new review sketch 2017-04-26 10 am-28-46

When I saw what React Sketch.app can do, its purpose immediately made sense to me in the context of this type of work. Having a tool generate all permutations of a specific component instead of having to manually compose symbols and create their measurement versions would be a much better workflow.

I’m curious to discuss if the following ideas fit with your plans for this project:

  • Similarly to rendering Artboards, React Sketch.app should be able to render Symbol Masters.
  • With a system similar to how refs work in React, it should be possible to refer to symbol masters and place instances, e.g. <SymbolInstance master="button-active"/>
  • Being able to set the resizing method on a per-element basis within masters as a prop (e.g. stretch, resize-object, etc.) would allow to programmatically define the behaviour of such symbols

Having a “style guide” that is composed out of symbol masters that are defined programmatically has a twofold advantage: designers who are not experienced in programming can directly use the generated file and symbols in it, together with simple plugins such as Auto Layout, to build their comps manually.

Designers who also have a background in programming and need to build much more complex comps can work with the same symbol instances, whose masters are still defined directly in code, and reap the benefits of Sketch’s symbols implementation.

Both groups would benefit from having a library that’s very flexible, always up to date, and easy to keep free of manual mistakes.

Any thoughts?

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Reactions:1
  • Comments:7 (3 by maintainers)

github_iconTop GitHub Comments

3reactions
lukewestbycommented, Apr 26, 2017

hey @jongold! wayfair.com uses both react and sketch extensively and we’re really excited about react-sketchapp. symbol support is something we would like so i wanted to drop a note here to let y’all know we’re going to work on contributing this feature 😄

2reactions
hanonnocommented, Jun 9, 2017

Now we’re getting somewhere, nice work!

To give you a bit of insight, I would like to use this to generate our design system, these components are all symbols.

system
Read more comments on GitHub >

github_iconTop Results From Across the Web

How to work with symbols in Illustrator
With Dynamic Symbols, symbols can share a master shape but different instances of the symbol can have dynamically modified appearances. If the ...
Read more >
Master symbol and instance all in code - Sketch Developers
I'm looking for some help in dynamically creating symbol masters and then resulting symbol instances. The biggest gap in documentation that ...
Read more >
Symbols - Sketch 101
1. Open up your Sketch document, and create a Symbol · 2. Name your Symbol · 3. Notice how the the card has...
Read more >
Symbols - Corel Vector Help
Every symbol is made of a master, which is the original symbol, and instances, which are the clones. To make a new symbol,...
Read more >
Creating symbol definitions
The Create Symbol command creates symbol definitions from drawing objects. Symbol definitions can also be created from other symbols, text, existing plug-in ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found