Viet Tran a38d04c3d5
feat(search): overhaul relevance and curated design data
Overhaul BM25 relevance, reasoning and data-quality contracts; refresh UI styles and framework guidance; add resilient text, chip, badge and micro-interaction guidance; strengthen release, provenance and catalog refresh gates; update bilingual documentation.
2026-08-14 00:08:23 +07:00

57 KiB
Raw Blame History

1NoCategoryIcon NameKeywordsLibraryImport CodeUsageBest ForStyleSemantic RoleAllowed Contexts
21Navigationlisthamburger menu navigation toggle barsPhosphorimport { List } from '@phosphor-icons/react'<List size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Mobile navigation drawer toggle sidebarOutlineinteractivedecorative|meaningful|interactive
32Navigationarrow-leftback previous return navigatePhosphorimport { ArrowLeft } from '@phosphor-icons/react'<ArrowLeft size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Back button breadcrumb navigationOutlineinteractivedecorative|meaningful|interactive
43Navigationarrow-rightnext forward continue navigatePhosphorimport { ArrowRight } from '@phosphor-icons/react'<ArrowRight size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Forward button next step CTAOutlineinteractivedecorative|meaningful|interactive
54Navigationcaret-downdropdown expand accordion selectPhosphorimport { CaretDown } from '@phosphor-icons/react'<CaretDown size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Dropdown toggle accordion headerOutlineinteractivedecorative|meaningful|interactive
65Navigationcaret-upcollapse close accordion minimizePhosphorimport { CaretUp } from '@phosphor-icons/react'<CaretUp size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Accordion collapse minimizeOutlineinteractivedecorative|meaningful|interactive
76Navigationhousehomepage main dashboard startPhosphorimport { House } from '@phosphor-icons/react'<House size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Home navigation main pageOutlinemeaningfuldecorative|meaningful|interactive
87Navigationxclose cancel dismiss remove exitPhosphorimport { X } from '@phosphor-icons/react'<X size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Modal close dismiss buttonOutlineinteractivedecorative|meaningful|interactive
98Navigationarrow-square-outopen new tab external linkPhosphorimport { ArrowSquareOut } from '@phosphor-icons/react'<ArrowSquareOut size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).External link indicatorOutlineinteractivedecorative|meaningful|interactive
109Actionplusadd create new insertPhosphorimport { Plus } from '@phosphor-icons/react'<Plus size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Add button create new itemOutlineinteractivedecorative|meaningful|interactive
1110Actionminusremove subtract decrease deletePhosphorimport { Minus } from '@phosphor-icons/react'<Minus size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Remove item quantity decreaseOutlineinteractivedecorative|meaningful|interactive
1211Actiontrashdelete remove discard binPhosphorimport { Trash } from '@phosphor-icons/react'<Trash size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Delete action destructiveOutlineinteractivedecorative|meaningful|interactive
1312Actionpencil-simplepencil modify change updatePhosphorimport { PencilSimple } from '@phosphor-icons/react'<PencilSimple size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Edit button modify contentOutlineinteractivedecorative|meaningful|interactive
1413Actionfloppy-diskdisk store persist savePhosphorimport { FloppyDisk } from '@phosphor-icons/react'<FloppyDisk size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Save button persist changesOutlineinteractivedecorative|meaningful|interactive
1514Actiondownload-simpleexport save file downloadPhosphorimport { DownloadSimple } from '@phosphor-icons/react'<DownloadSimple size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Download file exportOutlinemeaningfuldecorative|meaningful|interactive
1615Actionupload-simpleimport file attach uploadPhosphorimport { UploadSimple } from '@phosphor-icons/react'<UploadSimple size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Upload file importOutlinemeaningfuldecorative|meaningful|interactive
1716Actioncopyduplicate clipboard pastePhosphorimport { Copy } from '@phosphor-icons/react'<Copy size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Copy to clipboardOutlinemeaningfuldecorative|meaningful|interactive
1817Actionsharesocial distribute sendPhosphorimport { Share } from '@phosphor-icons/react'<Share size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Share button socialOutlineinteractivedecorative|meaningful|interactive
1918Actionmagnifying-glassfind lookup filter queryPhosphorimport { MagnifyingGlass } from '@phosphor-icons/react'<MagnifyingGlass size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Search input barOutlineinteractivedecorative|meaningful|interactive
2019Actionfunnelsort refine narrow optionsPhosphorimport { Funnel } from '@phosphor-icons/react'<Funnel size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Filter dropdown sortOutlineinteractivedecorative|meaningful|interactive
2120Actiongeargear cog preferences configPhosphorimport { Gear } from '@phosphor-icons/react'<Gear size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Settings page configurationOutlinemeaningfuldecorative|meaningful|interactive
2221Statuschecksuccess done complete verifiedPhosphorimport { Check } from '@phosphor-icons/react'<Check size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Success state checkmarkOutlinemeaningfuldecorative|meaningful|interactive
2322Statuscheck-circlesuccess verified approved completePhosphorimport { CheckCircle } from '@phosphor-icons/react'<CheckCircle size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Success badge verifiedOutlinemeaningfuldecorative|meaningful|interactive
2423Statusx-circleerror failed cancel rejectedPhosphorimport { XCircle } from '@phosphor-icons/react'<XCircle size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Error state failedOutlinemeaningfuldecorative|meaningful|interactive
2524Statuswarningwarning caution attention dangerPhosphorimport { Warning } from '@phosphor-icons/react'<Warning size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Warning message cautionOutlinemeaningfuldecorative|meaningful|interactive
2625Statuswarning-circleinfo notice information helpPhosphorimport { WarningCircle } from '@phosphor-icons/react'<WarningCircle size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Info notice alertOutlinemeaningfuldecorative|meaningful|interactive
2726Statusinfoinformation help tooltip detailsPhosphorimport { Info } from '@phosphor-icons/react'<Info size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Information tooltip helpOutlinemeaningfuldecorative|meaningful|interactive
2827Statuscircle-notchloading spinner processing waitPhosphorimport { CircleNotch } from '@phosphor-icons/react'<CircleNotch size={20} weight="regular" className="animate-spin" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Loading state spinnerOutlinemeaningfuldecorative|meaningful|interactive
2928Statusclocktime schedule pending waitPhosphorimport { Clock } from '@phosphor-icons/react'<Clock size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Pending time scheduleOutlinemeaningfuldecorative|meaningful|interactive
3029Communicationenvelopeemail message inbox letterPhosphorimport { Envelope } from '@phosphor-icons/react'<Envelope size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Email contact inboxOutlinemeaningfuldecorative|meaningful|interactive
3130Communicationchat-circlechat comment bubble conversationPhosphorimport { ChatCircle } from '@phosphor-icons/react'<ChatCircle size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Chat comment messageOutlinemeaningfuldecorative|meaningful|interactive
3231Communicationphonecall mobile telephone contactPhosphorimport { Phone } from '@phosphor-icons/react'<Phone size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Phone contact callOutlinemeaningfuldecorative|meaningful|interactive
3332Communicationpaper-plane-tiltsubmit dispatch message airplanePhosphorimport { PaperPlaneTilt } from '@phosphor-icons/react'<PaperPlaneTilt size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Send message submitOutlinemeaningfuldecorative|meaningful|interactive
3433Communicationbellnotification alert ring reminderPhosphorimport { Bell } from '@phosphor-icons/react'<Bell size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Notification bell alertOutlinemeaningfuldecorative|meaningful|interactive
3534Useruserprofile account person avatarPhosphorimport { User } from '@phosphor-icons/react'<User size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).User profile accountOutlinemeaningfuldecorative|meaningful|interactive
3635Userusersteam group people membersPhosphorimport { Users } from '@phosphor-icons/react'<Users size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Team group membersOutlinemeaningfuldecorative|meaningful|interactive
3736Useruser-plusadd invite new memberPhosphorimport { UserPlus } from '@phosphor-icons/react'<UserPlus size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Add user inviteOutlineinteractivedecorative|meaningful|interactive
3837Usersign-insignin authenticate enterPhosphorimport { SignIn } from '@phosphor-icons/react'<SignIn size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Login signinOutlinemeaningfuldecorative|meaningful|interactive
3938Usersign-outsignout exit leave logoutPhosphorimport { SignOut } from '@phosphor-icons/react'<SignOut size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Logout signoutOutlinemeaningfuldecorative|meaningful|interactive
4039Mediaimagephoto picture gallery thumbnailPhosphorimport { Image } from '@phosphor-icons/react'<Image size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Image photo galleryOutlinemeaningfuldecorative|meaningful|interactive
4140Mediavideomovie film play recordPhosphorimport { Video } from '@phosphor-icons/react'<Video size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Video player mediaOutlineinteractivedecorative|meaningful|interactive
4241Mediaplaystart video audio mediaPhosphorimport { Play } from '@phosphor-icons/react'<Play size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Play button video audioOutlineinteractivedecorative|meaningful|interactive
4342Mediapausestop halt video audioPhosphorimport { Pause } from '@phosphor-icons/react'<Pause size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Pause button mediaOutlineinteractivedecorative|meaningful|interactive
4443Mediaspeaker-highsound audio speaker musicPhosphorimport { SpeakerHigh } from '@phosphor-icons/react'<SpeakerHigh size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Volume audio soundOutlinemeaningfuldecorative|meaningful|interactive
4544Mediamicrophonemicrophone record voice audioPhosphorimport { Microphone } from '@phosphor-icons/react'<Microphone size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Microphone voice recordOutlinemeaningfuldecorative|meaningful|interactive
4645Mediacameraphoto capture snapshot picturePhosphorimport { Camera } from '@phosphor-icons/react'<Camera size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Camera photo captureOutlinemeaningfuldecorative|meaningful|interactive
4746Commerceshopping-cartcart checkout basket buyPhosphorimport { ShoppingCart } from '@phosphor-icons/react'<ShoppingCart size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Shopping cart e-commerceOutlinemeaningfuldecorative|meaningful|interactive
4847Commerceshopping-bagpurchase buy store bagPhosphorimport { ShoppingBag } from '@phosphor-icons/react'<ShoppingBag size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Shopping bag purchaseOutlinemeaningfuldecorative|meaningful|interactive
4948Commercecredit-cardpayment card checkout stripePhosphorimport { CreditCard } from '@phosphor-icons/react'<CreditCard size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Payment credit cardOutlineinteractivedecorative|meaningful|interactive
5049Commercecurrency-dollarmoney price currency costPhosphorimport { CurrencyDollar } from '@phosphor-icons/react'<CurrencyDollar size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Price money currencyOutlinemeaningfuldecorative|meaningful|interactive
5150Commercetaglabel price discount salePhosphorimport { Tag } from '@phosphor-icons/react'<Tag size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Price tag labelOutlinemeaningfuldecorative|meaningful|interactive
5251Commercegiftpresent reward bonus offerPhosphorimport { Gift } from '@phosphor-icons/react'<Gift size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Gift reward offerOutlinemeaningfuldecorative|meaningful|interactive
5352Commercepercentdiscount sale offer promoPhosphorimport { Percent } from '@phosphor-icons/react'<Percent size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Discount percentage saleOutlinemeaningfuldecorative|meaningful|interactive
5453Datachart-baranalytics statistics graph metricsPhosphorimport { ChartBar } from '@phosphor-icons/react'<ChartBar size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Bar chart analyticsOutlinemeaningfuldecorative|meaningful|interactive
5554Datachart-piestatistics distribution breakdownPhosphorimport { ChartPie } from '@phosphor-icons/react'<ChartPie size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Pie chart distributionOutlinemeaningfuldecorative|meaningful|interactive
5655Datatrend-upgrowth increase positive trendPhosphorimport { TrendUp } from '@phosphor-icons/react'<TrendUp size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Growth trend positiveOutlinemeaningfuldecorative|meaningful|interactive
5756Datatrend-downdecline decrease negative trendPhosphorimport { TrendDown } from '@phosphor-icons/react'<TrendDown size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Decline trend negativeOutlinemeaningfuldecorative|meaningful|interactive
5857Datapulseactivity heartbeat monitor livePhosphorimport { Pulse } from '@phosphor-icons/react'<Pulse size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Activity monitor pulseOutlinemeaningfuldecorative|meaningful|interactive
5958Datadatabasestorage server data backendPhosphorimport { Database } from '@phosphor-icons/react'<Database size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Database storageOutlinemeaningfuldecorative|meaningful|interactive
6059Filesfiledocument page paper docPhosphorimport { File } from '@phosphor-icons/react'<File size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).File documentOutlinemeaningfuldecorative|meaningful|interactive
6160Filesfile-textdocument text page articlePhosphorimport { FileText } from '@phosphor-icons/react'<FileText size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Text document articleOutlinemeaningfuldecorative|meaningful|interactive
6261Filesfolderdirectory organize group filesPhosphorimport { Folder } from '@phosphor-icons/react'<Folder size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Folder directoryOutlinemeaningfuldecorative|meaningful|interactive
6362Filesfolder-openexpanded browse files viewPhosphorimport { FolderOpen } from '@phosphor-icons/react'<FolderOpen size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Open folder browseOutlinemeaningfuldecorative|meaningful|interactive
6463Filespaperclipattachment attach file linkPhosphorimport { Paperclip } from '@phosphor-icons/react'<Paperclip size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Attachment paperclipOutlinemeaningfuldecorative|meaningful|interactive
6564Fileslinkurl hyperlink chain connectPhosphorimport { Link } from '@phosphor-icons/react'<Link size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Link URL hyperlinkOutlinemeaningfuldecorative|meaningful|interactive
6665Filesclipboardpaste copy buffer notesPhosphorimport { Clipboard } from '@phosphor-icons/react'<Clipboard size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Clipboard pasteOutlinemeaningfuldecorative|meaningful|interactive
6766Layoutgrid-fourtiles gallery layout dashboardPhosphorimport { GridFour } from '@phosphor-icons/react'<GridFour size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Grid layout galleryOutlinemeaningfuldecorative|meaningful|interactive
6867Layoutlist-bulletsrows table lines itemsPhosphorimport { ListBullets } from '@phosphor-icons/react'<ListBullets size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).List view rowsOutlinemeaningfuldecorative|meaningful|interactive
6968Layoutcolumnslayout split dual sidebarPhosphorimport { Columns } from '@phosphor-icons/react'<Columns size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Column layout splitOutlinemeaningfuldecorative|meaningful|interactive
7069Layoutarrows-outfullscreen expand enlarge zoomPhosphorimport { ArrowsOut } from '@phosphor-icons/react'<ArrowsOut size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Fullscreen maximizeOutlinemeaningfuldecorative|meaningful|interactive
7170Layoutarrows-inreduce shrink collapse exitPhosphorimport { ArrowsIn } from '@phosphor-icons/react'<ArrowsIn size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Minimize reduceOutlinemeaningfuldecorative|meaningful|interactive
7271Layoutsidebarpanel drawer navigation menuPhosphorimport { Sidebar } from '@phosphor-icons/react'<Sidebar size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Sidebar panelOutlinemeaningfuldecorative|meaningful|interactive
7372Socialheartlike love favorite wishlistPhosphorimport { Heart } from '@phosphor-icons/react'<Heart size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Like favorite loveOutlinemeaningfuldecorative|meaningful|interactive
7473Socialstarrating review favorite bookmarkPhosphorimport { Star } from '@phosphor-icons/react'<Star size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Star rating favoriteOutlinemeaningfuldecorative|meaningful|interactive
7574Socialthumbs-uplike approve agree positivePhosphorimport { ThumbsUp } from '@phosphor-icons/react'<ThumbsUp size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Like approve thumbOutlinemeaningfuldecorative|meaningful|interactive
7675Socialthumbs-downdislike disapprove disagree negativePhosphorimport { ThumbsDown } from '@phosphor-icons/react'<ThumbsDown size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Dislike disapproveOutlinemeaningfuldecorative|meaningful|interactive
7776Socialbookmarksave later favorite markPhosphorimport { Bookmark } from '@phosphor-icons/react'<Bookmark size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Bookmark saveOutlinemeaningfuldecorative|meaningful|interactive
7877Socialflagreport mark important highlightPhosphorimport { Flag } from '@phosphor-icons/react'<Flag size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Flag reportOutlinemeaningfuldecorative|meaningful|interactive
7978Devicedevice-mobilemobile phone device touchPhosphorimport { DeviceMobile } from '@phosphor-icons/react'<DeviceMobile size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Mobile smartphoneOutlinemeaningfuldecorative|meaningful|interactive
8079Devicedevice-tabletipad device touch screenPhosphorimport { DeviceTablet } from '@phosphor-icons/react'<DeviceTablet size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Tablet deviceOutlinemeaningfuldecorative|meaningful|interactive
8180Devicemonitordesktop screen computer displayPhosphorimport { Monitor } from '@phosphor-icons/react'<Monitor size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Desktop monitorOutlinemeaningfuldecorative|meaningful|interactive
8281Devicelaptopnotebook computer portable devicePhosphorimport { Laptop } from '@phosphor-icons/react'<Laptop size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Laptop computerOutlinemeaningfuldecorative|meaningful|interactive
8382Deviceprinterprint document output paperPhosphorimport { Printer } from '@phosphor-icons/react'<Printer size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Printer printOutlinemeaningfuldecorative|meaningful|interactive
8483Securitylocksecure password protected privatePhosphorimport { Lock } from '@phosphor-icons/react'<Lock size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Lock secureOutlinemeaningfuldecorative|meaningful|interactive
8584Securitylock-openopen access unsecure publicPhosphorimport { LockOpen } from '@phosphor-icons/react'<LockOpen size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Unlock openOutlinemeaningfuldecorative|meaningful|interactive
8685Securityshieldprotection security safe guardPhosphorimport { Shield } from '@phosphor-icons/react'<Shield size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Shield protectionOutlinemeaningfuldecorative|meaningful|interactive
8786Securitykeypassword access unlock loginPhosphorimport { Key } from '@phosphor-icons/react'<Key size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Key passwordOutlinemeaningfuldecorative|meaningful|interactive
8887Securityeyeview show visible passwordPhosphorimport { Eye } from '@phosphor-icons/react'<Eye size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Show password viewOutlinemeaningfuldecorative|meaningful|interactive
8988Securityeye-slashhide invisible password hiddenPhosphorimport { EyeSlash } from '@phosphor-icons/react'<EyeSlash size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Hide passwordOutlinemeaningfuldecorative|meaningful|interactive
9089Locationmap-pinlocation marker place addressPhosphorimport { MapPin } from '@phosphor-icons/react'<MapPin size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Location pin markerOutlinemeaningfuldecorative|meaningful|interactive
9190Locationmap-trifoldmap directions navigate geography locationPhosphorimport { MapTrifold } from '@phosphor-icons/react'<MapTrifold size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Map directionsOutlinemeaningfuldecorative|meaningful|interactive
9291Locationcompasscompass direction pointer arrowPhosphorimport { Compass } from '@phosphor-icons/react'<Compass size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Navigation compassOutlinemeaningfuldecorative|meaningful|interactive
9392Locationglobeworld international global webPhosphorimport { Globe } from '@phosphor-icons/react'<Globe size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Globe worldOutlinemeaningfuldecorative|meaningful|interactive
9493Timecalendardate schedule event appointmentPhosphorimport { Calendar } from '@phosphor-icons/react'<Calendar size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Calendar dateOutlinemeaningfuldecorative|meaningful|interactive
9594Timearrows-clockwisereload sync update refreshPhosphorimport { ArrowsClockwise } from '@phosphor-icons/react'<ArrowsClockwise size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Refresh reloadOutlinemeaningfuldecorative|meaningful|interactive
9695Timearrow-counter-clockwiseundo back revert historyPhosphorimport { ArrowCounterClockwise } from '@phosphor-icons/react'<ArrowCounterClockwise size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Undo revertOutlinemeaningfuldecorative|meaningful|interactive
9796Timearrow-clockwiseredo forward repeat historyPhosphorimport { ArrowClockwise } from '@phosphor-icons/react'<ArrowClockwise size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Redo forwardOutlinemeaningfuldecorative|meaningful|interactive
9897Developmentcodedevelop programming syntax htmlPhosphorimport { Code } from '@phosphor-icons/react'<Code size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Code developmentOutlinemeaningfuldecorative|meaningful|interactive
9998Developmentterminalconsole cli command shellPhosphorimport { Terminal } from '@phosphor-icons/react'<Terminal size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Terminal consoleOutlinemeaningfuldecorative|meaningful|interactive
10099Developmentgit-branchversion control branch mergePhosphorimport { GitBranch } from '@phosphor-icons/react'<GitBranch size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Git branchOutlinemeaningfuldecorative|meaningful|interactive
101100Developmentgithub-logorepository code open sourcePhosphorimport { GithubLogo } from '@phosphor-icons/react'<GithubLogo size={20} weight="regular" />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).GitHub repositoryOutlinemeaningfuldecorative|meaningful|interactive
102101Style Configbold-typography-icon-systembold typography, editorial, mono label, phosphor, weight regular, minimal, icon+label required, size 2032Phosphor (react-native)import { ArrowRight } from 'phosphor-react-native'<ArrowRight size={20} weight="regular" color={colors.accent} />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Bold Typography Mobile style: weight="regular". Size 20px for UI controls, 32px for feature anchors. Icons MUST be paired with a Mono-stack text label (JetBrains Mono). Standalone icons only allowed for standard navigation (e.g., Back arrow). Accent color #FF3D00 only.Outlinemeaningfuldecorative|meaningful|interactive
103102Style Configcyberpunk-icon-systemcyberpunk, neon, glow, hud, phosphor, weight regular, accent glow, dark, angular, react nativePhosphor (react-native)import { Lightning } from 'phosphor-react-native'<Lightning size={24} weight="regular" color={colors.accent} />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Cyberpunk Mobile HUD style: weight="regular", color={colors.accent} (#00FF88 Matrix Green). Wrap every icon in a View with shadowColor: colors.accent / shadowOpacity: 0.6 / shadowRadius: 8 to simulate neon glow. Use borderRadius: 0 on wrapper. Avoid rounded icon containers. Always pair icon with data label in JetBrains Mono.Outlinemeaningfuldecorative|meaningful|interactive
104103Style Configacademia-icon-systemacademia, library, brass, ornate, phosphor, weight thin, muted warm, scholarly, mobilePhosphor (react-native)import { BookOpen } from 'phosphor-react-native'<BookOpen size={22} weight="thin" color={colors.brass} />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Academia (Scholarly Mobile) style: weight="thin" (thin engraved feel), color={colors.brass} (#C9A962). No sharp geometric or tech-inspired icons. Prefer book, scroll, key, quill-type icon metaphors. Wrap in circular View with 1px brass border. Avoid neon or saturated colored icons. All icon-only navigation must have an accessibilityLabel.Outlinemeaningfuldecorative|meaningful|interactive
105104Style Configweb3-bitcoin-icon-systemweb3, bitcoin, defi, crypto, neon orange, holographic, blurview, phosphor, glow, fintech mobilePhosphor (react-native)import { TrendUp } from 'phosphor-react-native'<TrendUp size={24} weight="regular" color={colors.bitcoinOrange} />; Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Bitcoin DeFi Mobile style: weight="regular", color={colors.bitcoinOrange} (#F7931A). Wrap icons in circular BlurView (intensity: 20) with 1px borderColor: '#F7931A' border (Holographic Node effect). shadowColor: '#F7931A' / shadowOpacity: 0.4 / shadowRadius: 8. Prefer finance/data icons (TrendUp, Wallet, Shield, Layers). All data icons use JetBrains Mono label.Outlinemeaningfuldecorative|meaningful|interactive
106105Guidelineicon-context-accessibilitydecorative icon aria hidden, meaningful icon text alternative, icon button accessible label, accessible name, aria pressed, aria expanded, semantic context, phosphor, heroiconsPhosphor (primary) + Heroicons (fallback)import { Question } from '@phosphor-icons/react'; import { QuestionMarkCircleIcon } from '@heroicons/react/24/outline';Prefer the most semantically precise Phosphor icon, even if it is outside this curated subset. Use Heroicons only as a consistent fallback. Keep one visual family per surface. Context is chosen by use: if decorative beside visible text, set aria-hidden="true"; if meaningful without equivalent visible text, provide a text alternative; if inside an interactive control, give the control an accessible name and expose applicable state (for example aria-pressed or aria-expanded).Contextual icon semantics, icon accessibility, and library fallback rulesOutlineguidelinedecorative|meaningful|interactive