Icons

Semantic icon names that resolve per configured set, sized in em and coloured by currentColor.

On this page

Icons are named by meaning, not by set. This site configuresui: 'ph', so menu renders Phosphor's list. Point that atlucide or fa7-solid and every glyph on this page changes at once — no call site is touched.

Note what this page doesn't ship: an include map. The site isoutput: 'static', where astro-icon already bundles only what's used. That list exists for output: 'server', and the integration derives it there by scanning source rather than asking you to maintain it.

The vocabulary

All 86 semantic names, read from the shipped map at build time. Every set the toolchain knows answers to this same list, which is what makes swapping one safe — so pick one and watch the glyphs change while the names don't. The second line in each cell is what that name resolves to; in your own project it's one line of astro.config.

Icon set

  • menuph:list
  • closeph:x
  • homeph:house
  • settingsph:gear
  • searchph:magnifying-glass
  • chevron-leftph:caret-left
  • chevron-rightph:caret-right
  • chevron-upph:caret-up
  • chevron-downph:caret-down
  • arrow-leftph:arrow-left
  • arrow-rightph:arrow-right
  • arrow-upph:arrow-up
  • arrow-downph:arrow-down
  • external-linkph:arrow-square-out
  • more-vertph:dots-three-vertical
  • more-horizph:dots-three
  • addph:plus
  • removeph:minus
  • deleteph:trash
  • editph:pencil
  • saveph:floppy-disk
  • copyph:copy
  • pasteph:clipboard
  • attachph:paperclip
  • uploadph:upload
  • downloadph:download
  • shareph:share
  • bookmarkph:bookmark
  • favoriteph:heart
  • starph:star
  • loginph:sign-in
  • logoutph:sign-out
  • emailph:envelope
  • phoneph:phone
  • locationph:map-pin
  • globeph:globe
  • linkph:link
  • clockph:clock
  • calendarph:calendar
  • scheduleph:calendar-dots
  • personph:person
  • groupph:users
  • fileph:file
  • file-addph:file-plus
  • folderph:folder
  • folder-openph:folder-open
  • folder-addph:folder-plus
  • imageph:image
  • exportph:upload-simple
  • importph:download-simple
  • backupph:cloud-arrow-up
  • compressph:arrows-in
  • checkph:check
  • errorph:warning-circle
  • warningph:warning
  • infoph:info
  • helpph:question
  • cartph:shopping-cart
  • tagph:tag
  • credit-cardph:credit-card
  • receiptph:receipt
  • leafph:leaf
  • treeph:tree
  • seedlingph:plant
  • trowelph:shovel
  • dropletph:drop
  • snowflakeph:snowflake
  • sunph:sun
  • cloudph:cloud
  • gridph:squares-four
  • listph:list
  • filterph:funnel
  • sortph:arrows-down-up
  • fullscreenph:corners-out
  • collapseph:corners-in
  • buildingph:building
  • videoph:video
  • lockph:lock
  • unlockph:lock-open
  • eyeph:eye
  • eye-offph:eye-slash
  • printph:printer
  • codeph:code
  • paletteph:palette
  • lightbulbph:lightbulb
  • lightningph:lightning
  • menulucide:menu
  • closelucide:x
  • homelucide:house
  • settingslucide:settings
  • searchlucide:search
  • chevron-leftlucide:chevron-left
  • chevron-rightlucide:chevron-right
  • chevron-uplucide:chevron-up
  • chevron-downlucide:chevron-down
  • arrow-leftlucide:arrow-left
  • arrow-rightlucide:arrow-right
  • arrow-uplucide:arrow-up
  • arrow-downlucide:arrow-down
  • external-linklucide:external-link
  • more-vertlucide:ellipsis-vertical
  • more-horizlucide:ellipsis
  • addlucide:plus
  • removelucide:minus
  • deletelucide:trash-2
  • editlucide:pencil
  • savelucide:save
  • copylucide:copy
  • pastelucide:clipboard-paste
  • attachlucide:paperclip
  • uploadlucide:upload
  • downloadlucide:download
  • sharelucide:share-2
  • bookmarklucide:bookmark
  • favoritelucide:heart
  • starlucide:star
  • loginlucide:log-in
  • logoutlucide:log-out
  • emaillucide:mail
  • phonelucide:phone
  • locationlucide:map-pin
  • globelucide:globe
  • linklucide:link
  • clocklucide:clock
  • calendarlucide:calendar
  • schedulelucide:calendar-days
  • personlucide:user
  • grouplucide:users
  • filelucide:file
  • file-addlucide:file-plus
  • folderlucide:folder
  • folder-openlucide:folder-open
  • folder-addlucide:folder-plus
  • imagelucide:image
  • exportlucide:file-output
  • importlucide:file-input
  • backuplucide:hard-drive-upload
  • compresslucide:minimize-2
  • checklucide:check-circle
  • errorlucide:circle-alert
  • warninglucide:triangle-alert
  • infolucide:info
  • helplucide:circle-help
  • cartlucide:shopping-cart
  • taglucide:tag
  • credit-cardlucide:credit-card
  • receiptlucide:receipt
  • leaflucide:leaf
  • treelucide:tree-pine
  • seedlinglucide:sprout
  • trowellucide:shovel
  • dropletlucide:droplet
  • snowflakelucide:snowflake
  • sunlucide:sun
  • cloudlucide:cloud
  • gridlucide:layout-grid
  • listlucide:list
  • filterlucide:filter
  • sortlucide:arrow-up-down
  • fullscreenlucide:maximize
  • collapselucide:minimize
  • buildinglucide:building-2
  • videolucide:video
  • locklucide:lock
  • unlocklucide:lock-open
  • eyelucide:eye
  • eye-offlucide:eye-off
  • printlucide:printer
  • codelucide:code
  • palettelucide:palette
  • lightbulblucide:lightbulb
  • lightninglucide:zap
  • menufa7-solid:bars
  • closefa7-solid:xmark
  • homefa7-solid:home
  • settingsfa7-solid:gear
  • searchfa7-solid:magnifying-glass
  • chevron-leftfa7-solid:chevron-left
  • chevron-rightfa7-solid:chevron-right
  • chevron-upfa7-solid:chevron-up
  • chevron-downfa7-solid:chevron-down
  • arrow-leftfa7-solid:arrow-left
  • arrow-rightfa7-solid:arrow-right
  • arrow-upfa7-solid:arrow-up
  • arrow-downfa7-solid:arrow-down
  • external-linkfa7-solid:arrow-up-right-from-square
  • more-vertfa7-solid:ellipsis-vertical
  • more-horizfa7-solid:ellipsis
  • addfa7-solid:plus
  • removefa7-solid:minus
  • deletefa7-solid:trash
  • editfa7-solid:pen
  • savefa7-solid:floppy-disk
  • copyfa7-solid:copy
  • pastefa7-solid:paste
  • attachfa7-solid:paperclip
  • uploadfa7-solid:upload
  • downloadfa7-solid:download
  • sharefa7-solid:share
  • bookmarkfa7-solid:bookmark
  • favoritefa7-solid:heart
  • starfa7-solid:star
  • loginfa7-solid:right-to-bracket
  • logoutfa7-solid:right-from-bracket
  • emailfa7-solid:envelope
  • phonefa7-solid:phone
  • locationfa7-solid:location-dot
  • globefa7-solid:globe
  • linkfa7-solid:link
  • clockfa7-solid:clock
  • calendarfa7-solid:calendar
  • schedulefa7-solid:calendar-days
  • personfa7-solid:user
  • groupfa7-solid:users
  • filefa7-solid:file
  • file-addfa7-solid:file-circle-plus
  • folderfa7-solid:folder
  • folder-openfa7-solid:folder-open
  • folder-addfa7-solid:folder-plus
  • imagefa7-solid:image
  • exportfa7-solid:file-export
  • importfa7-solid:file-import
  • backupfa7-solid:cloud-arrow-up
  • compressfa7-solid:compress
  • checkfa7-solid:check
  • errorfa7-solid:circle-exclamation
  • warningfa7-solid:triangle-exclamation
  • infofa7-solid:circle-info
  • helpfa7-solid:circle-question
  • cartfa7-solid:cart-shopping
  • tagfa7-solid:tag
  • credit-cardfa7-solid:credit-card
  • receiptfa7-solid:receipt
  • leaffa7-solid:leaf
  • treefa7-solid:tree
  • seedlingfa7-solid:seedling
  • trowelfa7-solid:trowel
  • dropletfa7-solid:droplet
  • snowflakefa7-solid:snowflake
  • sunfa7-solid:sun
  • cloudfa7-solid:cloud
  • gridfa7-solid:table-cells
  • listfa7-solid:list
  • filterfa7-solid:filter
  • sortfa7-solid:sort
  • fullscreenfa7-solid:expand
  • collapsefa7-solid:compress
  • buildingfa7-solid:building
  • videofa7-solid:video
  • lockfa7-solid:lock
  • unlockfa7-solid:lock-open
  • eyefa7-solid:eye
  • eye-offfa7-solid:eye-slash
  • printfa7-solid:print
  • codefa7-solid:code
  • palettefa7-solid:palette
  • lightbulbfa7-solid:lightbulb
  • lightningfa7-solid:bolt
  • menumaterial-symbols:menu
  • closematerial-symbols:close
  • homematerial-symbols:home
  • settingsmaterial-symbols:settings
  • searchmaterial-symbols:search
  • chevron-leftmaterial-symbols:chevron-left
  • chevron-rightmaterial-symbols:chevron-right
  • chevron-upmaterial-symbols:expand-less
  • chevron-downmaterial-symbols:expand-more
  • arrow-leftmaterial-symbols:arrow-back
  • arrow-rightmaterial-symbols:arrow-forward
  • arrow-upmaterial-symbols:arrow-upward
  • arrow-downmaterial-symbols:arrow-downward
  • external-linkmaterial-symbols:open-in-new
  • more-vertmaterial-symbols:more-vert
  • more-horizmaterial-symbols:more-horiz
  • addmaterial-symbols:add
  • removematerial-symbols:remove
  • deletematerial-symbols:delete
  • editmaterial-symbols:edit
  • savematerial-symbols:save
  • copymaterial-symbols:content-copy
  • pastematerial-symbols:content-paste
  • attachmaterial-symbols:attach-file
  • uploadmaterial-symbols:upload
  • downloadmaterial-symbols:download
  • sharematerial-symbols:share
  • bookmarkmaterial-symbols:bookmark
  • favoritematerial-symbols:favorite
  • starmaterial-symbols:star
  • loginmaterial-symbols:login
  • logoutmaterial-symbols:logout
  • emailmaterial-symbols:mail
  • phonematerial-symbols:call
  • locationmaterial-symbols:location-on
  • globematerial-symbols:language
  • linkmaterial-symbols:link
  • clockmaterial-symbols:schedule
  • calendarmaterial-symbols:calendar-today
  • schedulematerial-symbols:calendar-month
  • personmaterial-symbols:person
  • groupmaterial-symbols:group
  • filematerial-symbols:description
  • file-addmaterial-symbols:note-add
  • foldermaterial-symbols:folder
  • folder-openmaterial-symbols:folder-open
  • folder-addmaterial-symbols:create-new-folder
  • imagematerial-symbols:image
  • exportmaterial-symbols:upload-file
  • importmaterial-symbols:download
  • backupmaterial-symbols:backup
  • compressmaterial-symbols:compress
  • checkmaterial-symbols:check-circle
  • errormaterial-symbols:error
  • warningmaterial-symbols:warning
  • infomaterial-symbols:info
  • helpmaterial-symbols:help
  • cartmaterial-symbols:shopping-cart
  • tagmaterial-symbols:sell
  • credit-cardmaterial-symbols:credit-card
  • receiptmaterial-symbols:receipt-long
  • leafmaterial-symbols:eco
  • treematerial-symbols:forest
  • seedlingmaterial-symbols:potted-plant
  • trowelmaterial-symbols:construction
  • dropletmaterial-symbols:water-drop
  • snowflakematerial-symbols:ac-unit
  • sunmaterial-symbols:light-mode
  • cloudmaterial-symbols:cloud
  • gridmaterial-symbols:grid-view
  • listmaterial-symbols:list
  • filtermaterial-symbols:filter-list
  • sortmaterial-symbols:sort
  • fullscreenmaterial-symbols:fullscreen
  • collapsematerial-symbols:fullscreen-exit
  • buildingmaterial-symbols:domain
  • videomaterial-symbols:videocam
  • lockmaterial-symbols:lock
  • unlockmaterial-symbols:lock-open
  • eyematerial-symbols:visibility
  • eye-offmaterial-symbols:visibility-off
  • printmaterial-symbols:print
  • codematerial-symbols:code
  • palettematerial-symbols:palette
  • lightbulbmaterial-symbols:lightbulb
  • lightningmaterial-symbols:bolt

Sizing & colour

.icon is a box sized in em via --icon-size (default1.25em), and its svg inherits currentColor. So an icon takes the size and colour of whatever it sits in — there is noicon-large or icon-danger variant to learn.

Inline in a sentence the icon tracks the text size, because the box is measured in em against its own font-size.

Icons in buttons and links

.cta and :where(button, .btn) are alreadyinline-flex with a gap, so an icon before or after the label ischild order — there is no cta--with-icon modifier, and there shouldn't be one. The glyph picks up each tier's own text colour for free.

New projectContinue

An icon-only control still needs a name. Pass label and it becomesrole="img" with an aria-label; leave it off and the icon isaria-hidden, which is right whenever a text label sits beside it.

Weights

Phosphor keeps every weight in one collection and varies the icon name (list, list-bold, list-fill). Font Awesome splits the same idea across collections instead (fa7-solid vs fa7-regular), so there the weight is part of the prefix. Set icons.weight once and the site-wide default follows; these are spelled out per-icon to show the difference.

regularboldfillduotonethin

The escape hatch

A name containing : passes through untouched. Brand marks are the usual case — they're in simple-icons, not the semantic map, and there is no meaningful "semantic name" for a logo.

Outside Astro — Bricks, WordPress, an EmDash renderer — the same names come from a generated SVG sprite instead: <use href="…/icons.svg#ph--list">, no JavaScript and no icon-API request. Every semantic name also gets a set-independent icon-<name>alias there, so that markup survives a set swap too. Seethe icons reference.