Contributing
Add a missing icon, improve an existing glyph, or help refine the grid.
All changes land through pull requests on GitHub.
Before you open a PR
- Search first. Check the icon library and open issues for duplicates.
- Follow the grid. Icons use a unified grid. Larger marks use 2px strokes.
- Check brand guidelines. Link the guideline you followed for company/product logos.
- Include:
- A one-sentence description in the metadata frontmatter
- At least one tag (
frontend,cloud,database, etc.) - A link to the official brand website
- Both colored and monochrome SVG variants
Adding an icon
- Add the optimized SVG to
packages/core/export-files/icons/<slug>.svg - Add the monochrome version to
packages/core/export-files/font/<slug>.svg
Use kebab-case slugs: next-js, visual-studio-code. For multiple variants, add a suffix (react and react-icon).
- Commit:
feat: add next-js icon - Generate the docs page:
cd apps/website && pnpm run copy:mdx
- Fill in the description, tags, alternatives, and website link in the generated MDX file
- Commit:
docs: add next-js icon
Improving an existing icon
- Keep original icon names. They are public API.
- Match the visual weight of neighboring icons.
- Test both colored and monochrome variants.
Icon specs
- Canvas size:
600x600, maxing out by width or height - Clean up SVGs: remove unnecessary groups, metadata, and attributes
- Monochrome icons use
currentColorfor fill or stroke - Use SVGO with default config to optimize
Code of conduct
Be kind. Assume good intent.