Adobe XD plugin boilerplate
A quick start boilerplate to begin a plugin for Adobe XD CC. It uses webpack for bundling and therefore has support for npm modules (for demonstration purposes, it has the
xd-storage-helper preinstalled). It also comes with the typings (https://github.com/AdobeXD/typings) preconfigured for autocompletion so you can jump-start your plugin.
Once you've cloned the repo, you merely need to run
npm install in the root folder of the (cloned) project from your console. After that, you'll need to adjust the
manifest.json in the
dist folder and after that, you're ready to go.
The main two folders you'll be working in are the
dist folder, which is where your code gets compiled into and where you'll need to put all the "static" resources (like images, icons etc. – also your manifest.json file is here).
It is the
dist folder that gets compiled into your
.xdx plugin and what provides your 'valid' plugin code.
npm run build
This will build (i.e. compile) your plugin and automatically generate a
dist.xdx file which can be found in the root folder and is ready to get submitted for review in the Adobe developer console.
npm run compile
Does the exact same thing as
npm run build, but does not generate a
dist.xdx file (and only compiles your plugin so it "lives" in your
npm run debug:install
This will build (or compile) your plugin and install it in the development folder of Adobe XD once. Please note that this uses the development mode when compiling, making mistakes easier to find. This, however, means your plugin won't get minified.
npm run debug:watch or
Does the same as
npm run debug:install, but watches the file system for changes and automatically recompiles and reinstalls the plugin when anything's changed (extremely useful during development).
Please note that you'll still need to run the "Reload plugins" command inside Adobe XD after every new install (may that be via
debug:install or every time via
npm run lint
Runs the ESLint linter on the
src folder to check for style errors in your code.
Setting up different editors and IDEs
Visual Studio Code
The project should work out of the box in Visual Studio Code, no further configuration should be required.
- Activate node autocompletion (Preferences=>Languages & Frameworks=>Node.js and npm=>Enable)
- Mark the
typesfolder as Resources root (in the project panel)
To add autocompletion, this boilerplate uses the MIT-licensed Typescript definitions that can be found at https://github.com/AdobeXD/typings.