form-data
npmv4.0.6TypeScriptA library to create readable "multipart/form-data" streams. Can be used to submit forms and file uploads to other web applications.
Safe to adopt
Yes — form-data scores well across adoption, maintenance, weight, supply chain, and licensing. No download data reported for this package yet. Last published 89 days ago. 15 releases in the last 2 years.
- ?Adoption: grade ?, Not reported by this registry.
No download data reported for this package yet.
- AMaintenance: grade A, Excellent.
Last published 89 days ago. 15 releases in the last 2 years.
- BWeight: grade B, Good.
Pulls in 18 transitive packages, about 529 KB installed (at least — some of the tree is still being crawled).
- ASupply chain: grade A, Excellent.
No install scripts, 6 maintainers, and a contained dependency surface.
- ALicense: grade A, Excellent.
MIT — permissive, with no copyleft found in the dependency tree.
Grades are computed deterministically from registry metadata collected by PackageGraph — downloads, dependents, publish dates, the resolved dependency tree, maintainer count, and declared licenses. No third-party scores are used.
Install cost
What you actually take on by adding form-data to a project.
Runtime packages this one declares itself.
Distinct packages in the full runtime tree, deduplicated the way a package manager would.
Unpacked size of this package plus its entire runtime tree.
Longest resolved dependency chain below this package.
Part of this dependency tree has not been crawled yet, so these figures are a lower bound rather than a final total.
Licenses in the dependency tree
Every license you inherit by installing form-data, not just its own. Check this before a legal review, not after.
Compatibility
- Node.js
- node >= 6
- Module format
- CommonJS only
- TypeScript
- Types included
- Install scripts
- None
Quick start
A usage example from the form-data README.
var FormData = require('form-data');
var fs = require('fs');
var form = new FormData();
form.append('my_field', 'my value');
form.append('my_buffer', new Buffer(10));
form.append('my_file', fs.createReadStream('/foo/bar.jpg'));Dependencies
Declared by form-data v4.0.6. Runtime dependencies are installed with the package; dev dependencies are not.
Runtime (5)
Dev (22)
Used by
Popular packages that depend on form-data.
A light-weight module that brings Fetch API to node.js
Promise based HTTP client for the browser and node.js
Reactive Extensions for modern JavaScript
Simplified HTTP request client.
A Node.js fetch shim using built-in Request, Response, and Headers (but without native fetch)
Fake HTTP injection library
An implementation of window.fetch in Node.js using Minipass streams
Relationship graph
Dependencies (left) and dependents (right) of form-data.
Frequently installed together
An AST-based pattern checker for JavaScript.
Prettier is an opinionated code formatter
Fast, unopinionated, minimalist web framework
Next generation testing framework powered by Vite
An HTTP(s) proxy `http.Agent` implementation for HTTPS
ECMAScript parser
Node.js body parsing middleware
HTTP and HTTPS modules that follow redirects.
TypeScript definitions for node
Browser running for Vitest using playwright
Offers getProxyForUrl to get the proxy URL for a URL, respecting the *_PROXY (e.g. HTTP_PROXY) and NO_PROXY environment variables.
A high-level API to automate web browsers
Release history
12 releases in the last two years, typically about 1 day apart.
| Version | Published | Size | License |
|---|---|---|---|
| 2.5.6 | 2 months ago | 79 KB | MIT |
| 3.0.5 | 2 months ago | 80 KB | MIT |
| 4.0.6latest | 2 months ago | 82 KB | MIT |
| 4.0.5 | 9 months ago | 79 KB | MIT |
| 2.5.5 | 1 year ago | 77 KB | MIT |
| 2.5.4 | 1 year ago | 88 KB | MIT |
| 3.0.4 | 1 year ago | 76 KB | MIT |
| 4.0.4 | 1 year ago | 74 KB | MIT |
| 4.0.3 | 1 year ago | 43 KB | MIT |
| 4.0.2 | 1 year ago | 31 KB | MIT |
| 3.0.3 | 1 year ago | 31 KB | MIT |
| 2.5.3 | 1 year ago | 30 KB | MIT |
| 4.0.1 | 1 year ago | 31 KB | MIT |
| 3.0.2 | 1 year ago | 30 KB | MIT |
| 2.5.2 | 1 year ago | 29 KB | MIT |
Overview
form-data is an npm package that a library to create readable "multipart/form-data" streams. Can be used to submit forms and file uploads to other web applications. It has 7 known dependents in the graph. The latest version is 4.0.6, released under the MIT license.
Who should use it
Teams working in the npm ecosystem who need a library to create readable "multipart/form-data" streams. Can be used to submit forms and file uploads to other web applications and value a focused solution.
When not to use it
Consider an alternative if you need to minimize your dependency tree, or if a more actively-maintained option better fits your npm stack.
Pros
- Ships TypeScript type definitions.
- Clear open-source license (MIT).
Cons
- Large dependency tree (27 direct dependencies) increases install size and audit surface.
Auto-generated from collected registry metadata. No external claims are inferred.
Frequently asked questions
Should I use form-data?
Yes — form-data scores well across adoption, maintenance, weight, supply chain, and licensing. No download data reported for this package yet. Last published 89 days ago. 15 releases in the last 2 years.
How do I install form-data?
Run `npm install form-data` to add form-data to your npm project.
How many dependencies does form-data have?
form-data declares 27 direct dependencies and pulls in 18 packages in total once its runtime tree is resolved totalling about 529 KB on disk.
What license is form-data released under?
form-data is distributed under the MIT license.
How popular is form-data?
npm does not publish download counts. Within PackageGraph's crawl, 7 known packages depend on form-data.
Is form-data still maintained?
The most recent release of form-data (v4.0.6) was published 2 months ago.
Does form-data run install scripts?
No. form-data does not define preinstall, install, or postinstall scripts, so installing it does not execute publisher-supplied code.