Sketchpacks.com, a Sketch plugin registry and directory

An attempt to solve an experience gap within the Sketch community through open source software and design.

The collaboration and talent found within the Sketch community is one to admire. There have been many amazing plugins contributed that have boosted my productivity by leaps and bounds. Plugins that allow me to try out an idea with very little effort. However, there are still some obstacles I’ve noticed and experienced around the ecosystem of plugins.

Management

Just like you, I’m a huge fan of Sketch Toolbox, the open source Sketch plugin manager created by shahruz. Unfortunately, it seems that there hasn’t been any development on it for nearly two years. If I had more knowledge of Objective-C, I would definitely contribute to this amazing project. The possibilities of where this project could go are many, but is limited by our time and energy.

Acquisition

For a while now, plugin authors have been contributing their plugins to sketchplugins/plugin-directory, a Github repository that also serves as the data source for Sketch Toolbox. Even Sketchapp’s Extensions page uses a similar method and is powered by their own JSON file.

I also recently came across a rather interesting CLI tool for keeping plugins sync’d across teams and devices, called DPM by Alasdair Monk. I definitely got excited about this one as I truly appreciate what CLI tools allow me to do without needing a GUI.

dpm install marcosvidal/Sketch-Notebook

What drew me in was workflow that I am already very familiar with and dependent on by other CLI tools to interface with Rubygems, NPM, and Bower.

Distribution

Sketch Toolbox’s data source is powered by a simple JSON file which is essentially a list of all Sketch plugins hosted over on Github. I love how simple and effective this tactic worked.

Tying it all together

The idea of what Sketchpacks could be was floating around in my head for a few months. It was always more of a “What if…”, rather than a “Let’s go build it!” type of idea. But as I spoke to more and more Sketch users, I really started to notice the gaps in the ecosystem.

But as of last night, I deployed the initial version on Heroku. It’s feature set is rather small but has room for improvements. As of right now, it allows:

  • Anyone can add a plugin to the registry
  • Plugin ownership is inferred from it’s Github repository
  • Plugin short-names are generated automatically from the repository name
  • Plugins are searchable

In the near future I hope Sketchpacks could provide a service similar to Rubygems.org and NPM, but with a few tweaks of course:

  • Plugin Authors will be able to edit certain information about the plugin either through Sketchpacks.com or a sketchpack.json manifest file
  • Plugin short-names are generated automatically from the repository name, but can be updated via sketchpack.json (granted their is no duplicate short name in existence)
  • An API that could power both Sketch Toolbox and DPM

This short wish list of mine is currently what is driving Sketchpacks’ direction, but with your help of course it can be even better.

If you have any ideas, feedback, or suggestions on what you’d love to see in a Sketch Plugin registry and directory, please file an issue over on Github.