Member-only story
Make your app extensible with JavaScript Core
Undoubtedly, productivity apps are major time-savers over the use of homemade scripts and hacks. Not having to reinvent the wheel every time and getting a much improved experience is where the value comes from for the users. However, even the best apps are limited by the set of features the developer has bundled into, and sometimes it doesn’t cover all the needs a user may have.
Some apps are inherently extensible by their use of a scripting language as core (e.g. Sublime with Python, Emacs with Lisp, Atom with JavaScript). It’s not the case of many native apps, which are compiled, code-signed and sometimes sandboxed to guarantee their integrity. Very few native Mac apps have succeeded to become truly extensible: Sketch is an amazing example, which has even succeeded to build a large ecosystem of plugins around it.
Since the early days, Paw has been sticking to the system as a native, code-signed and fully sandboxed app. But I realized the need of extensibility the day the Apiary team showed interest in an integration with their open description format API Blueprint. The idea of Paw importing 3rd party API descriptions to let users visually test their API calls and generate…