Upload External Dependencies

On this page


You can upload npm modules into your Stitch application and use the uploaded external dependencies in your Functions. This allows your application to depend upon external libraries for code reuse.

To use external dependencies, upload an archive of an npm node_modules folder via the Stitch UI. Once uploaded, any Stitch Function can import and use any dependencies listed on the dependencies page of the Stitch UI.

External Dependency Size Constraints

Uploaded zip files are subject to a 10MB size cap.



Locally Install External Dependencies

To upload external dependencies, you first need a local node_modules folder containing at least one Node.js package. You can use the following code snippet to locally install a dependency you would like to upload:

npm install <package name>

If the node_modules folder does not already exist, this command automatically creates it.

Alternative Methods of Installation

You can also configure a package.json and run the npm install command to install all packages (and their dependencies) listed in your package.json.

To learn more about npm and node_modules, consult the npm documentation .


Create a Dependency Archive

Now that you’ve downloaded all of your npm modules, you need to package them up in an archive so you can upload them to Stitch. Create an archive containing the node_modules folder:

tar -czf node_modules.tar.gz node_modules/

Supported Archive Formats

Stitch supports .tar, .tar.gz, and .zip archive formats.


Upload the Dependency Archive

Once you’ve created an archive containing your dependencies, all that’s left to do is upload them to Stitch. You can upload your dependency archive using the Stitch UI:

  1. Select Functions from the left-side navigation.
  2. Select the Dependencies tab.
  3. Click the Upload button.
  4. In the file picker, select the node_modules.tar.gz archive you just created and click Open. Stitch automatically uploads the archive file, which may take several minutes depending on the speed of your internet connection and the size of your dependency archive.
  5. Whether the operation succeeded or failed, Stitch displays a banner indicating the success or failure of the operation. If successful, the Dependencies tab displays a list of the dependencies that you included in your dependency archive. If drafts are enabled, you will also need to click Review & Deploy to apply these changes. If drafts are disabled, the change will take effect within 5 to 60 seconds depending on the size of your dependency archive.

Now that your dependencies have been uploaded, try importing them in a Stitch Function.