persistgraphql-webpack-plugin weekly downloads statistics
By sysgears (3 listings) · npm · Webpack plugins
PersistGraphQL Webpack Plugin
persistgraphql-webpack-plugin has 69 recorded weekly downloads on npm, a decrease of 17.9% over the past 30 days, ranking #1785 of 2,322 tracked listings.
About persistgraphql-webpack-plugin
PersistGraphQL Webpack Plugin
Webpack Plugin that gathers all the GraphQL queries/mutation/subscriptions both from .graphql files and from embedded queries in JavaScript/TypeScript source code. It generates virtual module persisted_queries.json with all the queries as a map object (query -> id) available for require from any place within source code and output file on file system with all the queries.
Installation
npm install --save-dev persistgraphql-webpack-plugin
Usage
When Webpack is used for front-end only
Sample Webpack config:
var PersistGraphQLPlugin = require('persistgraphql-webpack-plugin');
module.exports = {
module: {
rules: [
{
test: /\.(graphql|gql)$/,
use: 'graphql-tag/loader'
},
]
}
plugins: [
new PersistGraphQLPlugin({filename: 'persisted_queries.json',
moduleName: path.resolve('node_modules/persisted_queries.json')})
]
};
In the source code of front-end persisted GraphQL queries will be injected
as a virtual module persisted_queries.json. This module will be updated
if queries added or changed. Also asset with name persisted_queries.json will be generated
during compilation and written to output directory.
var queryMap = require('persisted_queries.json');
console.log(queryMap);
When Webpack is used both for back-end and front-end
var PersistGraphQLPlugin = require('persistgraphql-webpack-plugin');
const moduleName = path.resolve('node_modules/persisted_queries.json');
const frontendPersistPlugin = new PersistGraphQLPlugin({ moduleName });
const backendPersistPlugin =
new PersistGraphQLPlugin({ provider: clientPersistPlugin, moduleName });
var frontendWebpackConfig = {
module: {
rules: [
{
test: /\.(graphql|gql)$/,
use: 'graphql-tag/loader'
},
]
}
plugins: [
frontendPersistPlugin
]
};
var backendWebpackConfig = {
// ...
plugins: [
backendPersistPlugin
]
}
Both in the source code of front-end and back-end persisted GraphQL queries will be injected
as a virtual module node_modules/persisted_queries.json. This module will be updated if queries added or changed.
var queryMap = require('persisted_queries.json');
console.log(queryMap);
| Name | Type | Description |
|---|---|---|
moduleName | {String} | Name of virtual wepback module with persisted GraphQL queries, this option is required |
filename | {String} | Name of the ouput file with persisted GraphQL queries |
addTypename | {Boolean} | Apply a query transformation to the query documents, adding the __typename field at every level of the query, default: true |
hashQuery | {Function} | Function to hash queries in hash map, default: SHA-256 from query, if false passed - counter values are used |
provider | {Object} | Instance of plugin running on another webpack instance which will provide persisted GraphQL queries |
excludeRegex | {RegExp} | RegExp to match file path that will be excluded from processing by the plugin, default: /[\\/]node_modules[\\/]/ |
graphqlRegex | {RegExp} | RegExp to match files loaded by graphql-tag/loader that should be processed by the plugin, default: /(.graphql|.gql)$/ |
jsRegex | {RegExp} | RegExp to match js files that have embedded GraphQL queries marked with gql tag, default: /(.jsx?|.tsx?)$/ |
License
Copyright © 2017 SysGears INC. This source code is licensed under the MIT license.
Description from the npm listing.
- webpack-plugin
- graphql
- apollo-client
README badge
Show your rank in a README or on your website. The badge updates automatically.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Ranking history
Listing placement
Listing placement
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Recent observations
Full history (122)Similar npm Webpack plugins plugins
All 20 persistgraphql-webpack-plugin alternativesData source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/persistgraphql-webpack-plugin. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.