Skip to content

Instantly share code, notes, and snippets.

@pladaria
Last active February 7, 2023 17:15
Show Gist options
  • Select an option

  • Save pladaria/69321af86ce165c2c1fc1c718b098dd0 to your computer and use it in GitHub Desktop.

Select an option

Save pladaria/69321af86ce165c2c1fc1c718b098dd0 to your computer and use it in GitHub Desktop.
SVGO config file
multipass: true
plugins:
- addAttributesToSVGElement: false
- addClassesToSVGElement: false
- cleanupAttrs: true
- cleanupEnableBackground: true
- cleanupIDs: true
- cleanupListOfValues: true
- cleanupNumericValues:
floatPrecision: 2
- collapseGroups: true
- convertColors: true
- convertPathData: true
- convertShapeToPath: true
- convertStyleToAttrs: true
- convertTransform: true
- mergePaths: true
- minifyStyles: true
- moveElemsAttrsToGroup: true
- moveGroupAttrsToElems: true
- removeAttrs: true
- removeComments: true
- removeDesc: true
- removeDimensions: true
- removeDoctype: true
- removeEditorsNSData: true
- removeElementsByAttr: true
- removeEmptyAttrs: true
- removeEmptyContainers: true
- removeEmptyText: true
- removeHiddenElems: true
- removeMetadata: true
- removeNonInheritableGroupAttrs: true
- removeRasterImages
- removeStyleElement: true
- removeTitle: true
- removeUnknownsAndDefaults: true
- removeUnusedNS: true
- removeUselessDefs: true
- removeUselessStrokeAndFill: true
- removeViewBox: true
- removeXMLNS: false
- removeXMLProcInst: true
- sortAttrs: true
- transformsWithOnePath: true
js2svg:
pretty: true
indent: ' '
@bramchi

bramchi commented Aug 15, 2022

Copy link
Copy Markdown

@VincentVToscano Any luck figuring that out? I'm having the same issue

@VincentVToscano

Copy link
Copy Markdown

@bramchi I have had no luck with what I mentioned above. I have also had no luck minifying JSON-LD between these tags:

<script type="application/ld+json">…</script>

Have you had any luck with either? 🤞

@bramchi

bramchi commented Sep 27, 2022

Copy link
Copy Markdown

@VincentVToscano Have you tried placing a regular svgo.config.js file alongside your package.json? That has given me some good results in the past for other packages. It gets picked up by the svgo core library, regardless of any config flags. Not sure a yml file will work, so make sure its a plain JavaScript file. It should contain something like this, a list of plugins that you want to enable:

module.exports = {
    plugins: [
      'removeDoctype',
      'removeXMLProcInst',
      'removeComments',
      'removeMetadata',
      'removeEditorsNSData',
      'cleanupAttrs',
      'inlineStyles',
      'minifyStyles',
      // 'cleanupIDs',
      'removeUselessDefs',
      'cleanupNumericValues',
      'convertColors',
      'removeUnknownsAndDefaults',
      'removeNonInheritableGroupAttrs',
      'removeUselessStrokeAndFill',
      // 'removeViewBox',
      'cleanupEnableBackground',
      'removeHiddenElems',
      'removeEmptyText',
      'convertShapeToPath',
      'convertEllipseToCircle',
      'moveElemsAttrsToGroup',
      'moveGroupAttrsToElems',
      'collapseGroups',
      'convertPathData',
      'convertTransform',
      'removeEmptyAttrs',
      'removeEmptyContainers',
      'mergePaths',
      'removeUnusedNS',
      'sortDefsChildren',
      'removeTitle',
      'removeDesc'
    ]
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment