Default configuration package for Parcel bundler that defines transformers, optimizers, packagers, and other build pipeline components
npx @tessl/cli install tessl/npm-parcel--config-default@2.15.0Parcel Config Default provides the complete default configuration for Parcel bundler, defining the entire build pipeline including transformers, optimizers, packagers, and runtime components. This configuration package enables Parcel's zero-configuration approach by providing sensible defaults for modern web development workflows.
npm install @parcel/config-defaultConfiguration file usage (most common):
The package is typically referenced in Parcel configuration files:
.parcelrc:
{
"extends": "@parcel/config-default"
}With customizations:
{
"extends": "@parcel/config-default",
"validators": {
"*.{js,jsx,ts,tsx}": ["@parcel/validator-eslint"]
},
"optimizers": {
"*.js": ["@parcel/optimizer-esbuild"]
}
}Programmatic usage (advanced):
const defaultConfig = require("@parcel/config-default");
// defaultConfig contains the complete configuration objectimport defaultConfig from "@parcel/config-default";
// TypeScript usage for accessing configuration programmaticallyCreate a .parcelrc file in your project root to use the default configuration:
{
"extends": "@parcel/config-default"
}This provides comprehensive support for:
The configuration is structured around Parcel's plugin architecture:
The complete configuration interface exported by the package.
interface ParcelConfigDefault {
bundler: string;
transformers: Record<string, string[]>;
namers: string[];
runtimes: string[];
optimizers: Record<string, string[]>;
packagers: Record<string, string>;
compressors: Record<string, string[]>;
resolvers: string[];
reporters: string[];
}Configuration Object:
{
"bundler": "@parcel/bundler-default",
"transformers": { /* 55+ file patterns mapped to transformer pipelines */ },
"namers": ["@parcel/namer-default"],
"runtimes": ["@parcel/runtime-rsc", "@parcel/runtime-js", "@parcel/runtime-browser-hmr", "@parcel/runtime-service-worker"],
"optimizers": { /* file patterns mapped to optimizer pipelines */ },
"packagers": { /* file patterns mapped to packager plugins */ },
"compressors": { "*": ["@parcel/compressor-raw"] },
"resolvers": ["@parcel/resolver-default"],
"reporters": ["@parcel/reporter-dev-server"]
}Specifies the bundling strategy used to group assets.
{
"bundler": "@parcel/bundler-default"
}Maps file patterns to transformer plugin pipelines for processing different file types.
{
"transformers": {
"types:*.{ts,tsx}": ["@parcel/transformer-typescript-types"],
"bundle-text:*": ["...", "@parcel/transformer-inline-string"],
"data-url:*": ["...", "@parcel/transformer-inline-string"],
"worklet:*.{js,mjs,jsm,jsx,es6,cjs,ts,tsx}": ["@parcel/transformer-worklet", "..."],
"react-static:*": ["@parcel/transformer-react-static", "..."],
"*.mdx": ["@parcel/transformer-mdx", "@parcel/transformer-js"],
"*.{js,mjs,jsm,jsx,es6,cjs,ts,tsx}": [
"@parcel/transformer-babel",
"@parcel/transformer-js",
"@parcel/transformer-react-refresh-wrap"
],
"*.{json,json5}": ["@parcel/transformer-json"],
"*.jsonld": ["@parcel/transformer-jsonld"],
"*.toml": ["@parcel/transformer-toml"],
"*.webmanifest": ["@parcel/transformer-webmanifest"],
"webmanifest:*.{json,webmanifest}": ["@parcel/transformer-webmanifest"],
"*.{yaml,yml}": ["@parcel/transformer-yaml"],
"*.{glsl,vert,frag}": ["@parcel/transformer-glsl"],
"*.{gql,graphql}": ["@parcel/transformer-graphql"],
"*.{styl,stylus}": ["@parcel/transformer-stylus"],
"*.{sass,scss}": ["@parcel/transformer-sass"],
"*.less": ["@parcel/transformer-less"],
"*.{css,pcss}": ["@parcel/transformer-postcss", "@parcel/transformer-css"],
"*.sss": ["@parcel/transformer-sugarss"],
"*.{htm,html,xhtml}": ["@parcel/transformer-posthtml", "@parcel/transformer-html"],
"*.pug": ["@parcel/transformer-pug"],
"*.coffee": ["@parcel/transformer-coffeescript"],
"*.elm": ["@parcel/transformer-elm"],
"*.vue": ["@parcel/transformer-vue"],
"template:*.vue": ["@parcel/transformer-vue"],
"script:*.vue": ["@parcel/transformer-vue"],
"style:*.vue": ["@parcel/transformer-vue"],
"custom:*.vue": ["@parcel/transformer-vue"],
"*.{png,jpg,jpeg,webp,gif,tiff,avif,heic,heif}": ["@parcel/transformer-image"],
"*.svg": ["@parcel/transformer-svg"],
"*.{xml,rss,atom}": ["@parcel/transformer-xml"],
"*.node": ["@parcel/transformer-node"],
"url:*": ["...", "@parcel/transformer-raw"]
}
}Key Transform Patterns:
"..." - Extends existing transformer pipeline"types:*" - TypeScript type-only files"bundle-text:*" - Text content for bundling"data-url:*" - Data URL transformations"worklet:*" - Web Worker and Worklet files"react-static:*" - React static site generation"webmanifest:*" - Web app manifest processing"url:*" - URL imports and referencesMaps file patterns to optimization plugin pipelines for production builds.
{
"optimizers": {
"data-url:*": ["...", "@parcel/optimizer-data-url"],
"*.css": ["@parcel/optimizer-css"],
"*.{html,xhtml}": ["@parcel/optimizer-html"],
"*.{js,mjs,cjs}": ["@parcel/optimizer-swc"],
"*.svg": ["@parcel/optimizer-svg"],
"*.{jpg,jpeg,png}": ["@parcel/optimizer-image"]
}
}Maps file patterns to packager plugins that combine assets into final bundles.
{
"packagers": {
"react-static:*.html": "@parcel/packager-react-static",
"*.{html,xhtml}": "@parcel/packager-html",
"*.css": "@parcel/packager-css",
"*.{js,mjs,cjs}": "@parcel/packager-js",
"*.svg": "@parcel/packager-svg",
"*.{xml,rss,atom}": "@parcel/packager-xml",
"*.ts": "@parcel/packager-ts",
"*.wasm": "@parcel/packager-wasm",
"*.{jsonld,svg,webmanifest}": "@parcel/packager-raw-url",
"*": "@parcel/packager-raw"
}
}Specifies plugins that determine output file naming strategies.
{
"namers": ["@parcel/namer-default"]
}Defines runtime code injection for different environments and features.
{
"runtimes": [
"@parcel/runtime-rsc",
"@parcel/runtime-js",
"@parcel/runtime-browser-hmr",
"@parcel/runtime-service-worker"
]
}Runtime Components:
@parcel/runtime-rsc - React Server Components support@parcel/runtime-js - Core JavaScript runtime features@parcel/runtime-browser-hmr - Hot Module Replacement for browsers@parcel/runtime-service-worker - Service Worker integrationDefines compression strategies for bundle outputs.
{
"compressors": {
"*": ["@parcel/compressor-raw"]
}
}Specifies module resolution strategies for dependency lookup.
{
"resolvers": ["@parcel/resolver-default"]
}Defines build progress and completion reporting plugins.
{
"reporters": ["@parcel/reporter-dev-server"]
}The configuration supports extension through the extends field and allows selective overrides:
{
"extends": "@parcel/config-default",
"transformers": {
"*.js": ["@custom/transformer", "..."]
},
"optimizers": {
"*.js": ["@custom/optimizer"]
}
}Extension Patterns:
"..." to extend existing pipelinesThe configuration depends on 24 core Parcel plugins:
@parcel/bundler-default@parcel/compressor-raw@parcel/namer-default@parcel/optimizer-css, @parcel/optimizer-html, @parcel/optimizer-image, @parcel/optimizer-svg, @parcel/optimizer-swc@parcel/packager-css, @parcel/packager-html, @parcel/packager-js, @parcel/packager-raw, @parcel/packager-svg, @parcel/packager-wasm@parcel/reporter-dev-server@parcel/resolver-default@parcel/runtime-browser-hmr, @parcel/runtime-js, @parcel/runtime-rsc, @parcel/runtime-service-worker@parcel/transformer-babel, @parcel/transformer-css, @parcel/transformer-html, @parcel/transformer-image, @parcel/transformer-js, @parcel/transformer-json, @parcel/transformer-node, @parcel/transformer-postcss, @parcel/transformer-posthtml, @parcel/transformer-raw, @parcel/transformer-react-refresh-wrap, @parcel/transformer-svgAdditional plugins for specialized file types (loaded on demand):
@parcel/transformer-sass, @parcel/transformer-less, @parcel/transformer-stylus, @parcel/transformer-sugarss@parcel/transformer-pug, @parcel/transformer-vue@parcel/transformer-coffeescript, @parcel/transformer-elm, @parcel/transformer-typescript-types@parcel/transformer-toml, @parcel/transformer-yaml, @parcel/transformer-xml, @parcel/transformer-jsonld@parcel/transformer-glsl, @parcel/transformer-graphql, @parcel/transformer-webmanifest, @parcel/transformer-worklet, @parcel/transformer-react-static, @parcel/transformer-inline-string@parcel/packager-react-static, @parcel/packager-ts, @parcel/packager-xml, @parcel/packager-raw-url@parcel/optimizer-data-url@parcel/transformer-mdx - MDX (Markdown + JSX) support for backward compatibilityRequires @parcel/core version ^2.15.4 for proper integration with the Parcel build system.