Brand & assets / Icon family with multiple visual weights
Phosphor Icons
Choose one icon family, then use weight deliberately instead of mixing unrelated styles.
Understand the resource
What it is.
Phosphor provides a coordinated icon family in multiple weights, including regular, bold and duotone treatments. Its core package includes raw SVG assets and catalog metadata, while separate integrations adapt the family to UI frameworks and design tools. That gives a team a useful way to vary emphasis while keeping recognizable geometry. The choice of weight is a visual decision; it does not replace labels, contrast checks or an explicit indication of state.
When it is useful
Use it when an interface needs a related set of navigation and status icons, or when a design system needs stronger and quieter variants without changing icon families. Pick a default weight and reserve exceptions for a named purpose so the interface stays predictable.
A proposed application
Put it to work.
This example illustrates a possible use. The proposed workflow and expected result are separate from the bounded checks recorded below.
Try this
Proposed workflow: use regular icons for a document list and a stronger Check Circle next to the written status Reviewed. Define the semantic status separately from the icon name and color. Keep the same label in narrow layouts and high-contrast modes. Our local check rendered three Check Circle weights; it did not validate this complete document-list workflow.
Result to aim for
A consistent asset specification with a default weight, clear state labels and reusable icon wrappers.
Before you start
What you need.
- Use the appropriate framework package or selected raw SVG files; pin the exact asset version.
- Give interactive wrappers names and focus behavior; mark decorative copies hidden.
- Keep MIT notices and check any separately obtained artwork or integration terms.
The practical boundaries
What to watch for.
- The core asset catalog is distinct from the homepage repository whose dated star count is shown in the inclusion note.
- Only three Check Circle SVGs were inspected and rendered. Their lack of matched active-content patterns does not certify all SVG files.
- Duotone and color choices still need contrast, forced-color and legibility checks in the actual interface.
Review record
What we could establish.
- Why included (2026-10-19): an established icon family that adds weight choices and raw assets useful across frameworks. GitHub phosphor-icons/homepage showed 7,678 stars; the inspected default-branch commit was dated 2026-08-26. This is one adoption/activity snapshot, not evidence of trend growth or safety.
- The proposed workflow above is an application idea. Executed checks and untested boundaries are stated separately in the evaluation.
The source-review notes describe documentation and identity. The account-free evaluation below records exactly which public interaction or local fixture was checked, what happened, and what remains untested.
Check current access, terms, licensing and data handling before using a resource with your own material.
Runtime and security evaluation
What the evaluation covers.
Pinned Phosphor core 2.1.1 regular, bold and duotone Check Circle SVGs rendered at 24 px and inherited the wrapper’s color. Three bounded SVG scans found no selected active-content patterns. Labels and hidden semantics were authored by the fixture.
Methods: Local package fixture · Source review. A completed check covers the stated sample; it is not a safety certification.
- Target
- @phosphor-icons/core
- Version or capture
- 2.1.1
- Integrity scope
- sha512-v4ARvrip4qBCImOE5rmPUylOEK4iiED9ZyKjcvzuezqMaiRASCHKcRIuvvxL/twvLpkfnEODCOJp5dM4eZilxQ==
Test conditions
- Chromium 155.0.8059.82; fresh disposable browser context, no account state or ambient credential variables.
- Synthetic inputs only; no uploads, purchases, accounts or private data.
- Pinned extracted assets/modules; browser HTTP(S) and WebSocket requests denied. No install/lifecycle scripts; no process-wide Node egress guarantee.
Individual checks and observations
Three SVG weights render
passLocal package fixture: Render pinned regular/bold/duotone Check Circle assets in authored wrapper
Observed: [{"weight":"regular","viewBox":"0 0 256 256","width":24,"fill":"rgb(30, 64, 175)","paths":1,"hidden":"true","scripts":0,"events":0,"externalRefs":0},{"weight":"bold","viewBox":"0 0 256 256","width":24,"fill":"rgb(30, 64, 175)","paths":1,"hidden":"true","scripts":0,"events":0,"externalRefs":0},{"weight":"duotone","viewBox":"0 0 256 256","width":24,"fill":"rgb(30, 64, 175)","paths":2,"hidden":"true","scripts":0,"events":0,"externalRefs":0}]
currentColor and accessible wrapper
passLocal package fixture: Read inherited color and authored button name
Observed: Three SVGs inherit the authored color; the wrapper supplies Confirm and aria-hidden. The raw assets alone do not define a control.
Bounded SVG active-content scan
passSource review: Inspect these three parsed SVGs for script/foreignObject/event attributes/HTTP references
Observed: Zero matched patterns in three selected SVGs. Not a sanitizer or a claim about every icon.
Framework and design-tool integration
not-runLocal package fixture: Use a framework wrapper or design plugin
Observed: The fixture rendered raw SVG assets only; no integration package or plugin was installed.
Security findings and boundaries
Manifest/license and selected entry/source inspection, plus the named synthetic local fixture. No active exploitation or full security audit.
Observed · caution
Three selected SVGs were self-contained in the fixture
The sampled SVGs rendered without external requests. No script, foreignObject, event attribute or HTTP-reference pattern matched in those files; this is a small sample, not a sanitizer.
Practical advice · caution
An asset is not an interactive control
Wrap actionable icons in native controls and supply understandable labels, focus states and adequate targets. Changing an icon’s weight alone may not communicate a status to everyone.
Observed · info
Pinned sample and network boundary
The fetched archive matched its registry SHA-512. The selected fixture made zero outbound attempts under an HTTP/WebSocket deny rule. No package lifecycle scripts executed; this does not audit all package code or dependencies.
Practical caveats
- Choose a default weight, then document why a stronger weight appears in a particular state.
- Keep the selected SVGs and their license version together so visual changes remain reviewable.
What remains untested
- Only three raw Check Circle assets from core 2.1.1; the catalog data module was not executed.
- No framework package, Figma/plugin workflow, complete SVG corpus, screen-reader, contrast or forced-colors evaluation.
Security limits
- No framework package, Figma/plugin workflow, complete SVG corpus, screen-reader, contrast or forced-colors evaluation.
- No complete dependency/vulnerability audit, authenticated data access, server authorization, retention or production security certification.
Evaluation sources
Follow the evidence
Sources and further reading.
Keep exploring
More in brand & assets.
Documentation reviewed
Logosystem
Study how marks behave across forms and motion.
Documentation reviewed
Logobook
Explore the construction of symbols and wordmarks.
Documentation reviewed
Logoinspo
Filter identity references by style, industry and color.