← Back to Index

ALPA Mobile · UI Refresh Epic AB#1821 · Updated: 2026-07-16 14:03 ET · Audited: 2026-06-29 18:29 ET

Asset Inventory

Catalog of all image and media assets required by the ALPA Mobile app — both currently bundled in ALPAMobile/Resources/Images/ and assets needed for the UI Refresh that must be supplied by the design team via SharePoint.

Iconography correction (2026-06-29) — dual strategy. An earlier version of this page stated that iconography "is handled by Font Awesome and Material Icons." That assumption did not match the design source. The canonical icons are a custom ALPA vector set (~36 named symbols on Figma page 🖤 Icons, 3:7). The strategy is dual, not "vectors instead of a font": The legacy-PNG section below retains its old "Replace → FA/Material" suggestions for historical reference; treat the FA glyph column as a candidate mapping, not the confirmed path. Full discrepancy capture: foundations-reconciliation.html.
Design team delivery: The design team will provide updated and new assets via a SharePoint folder. All rows marked Missing — needs SharePoint must arrive before the ALPAMobile.Presentation asset-bundling pass (the AB#2087 gate resolved 2026-07-01; the library shipped as a Blazor RCL, D61). Remote-URL assets are served by the API and do not require SharePoint delivery.
Keep Bundled asset retained as-is
Review May need design update for UI Refresh
Missing Required but not yet available
Replace → FA/Material PNG replaced by icon font; file to be removed
Remote URL Served by API — not bundled
Delete Dev artifact, not part of the app

Assets Needed for UI Refresh — Not Yet Available

These assets are required for the UI Refresh screens but are not yet provided. They must arrive from the design team SharePoint before the ALPAMobile.Presentation asset-bundling pass begins.
Asset Purpose / Screen Format Notes Status
Home screen hero illustration Decorative background graphic behind the home feed header. The old mobile hero Figma component (4055:5564) contained a vector airplane/travel illustration (~465×500 px). That component was dropped in the 2026-06-10 re-sync (0 occurrences in revised Figma) with no named replacement. SVG preferred; PNG @3x acceptable Confirm with design whether the UI Refresh home screen includes a background illustration. If yes, provide the SVG export. If the design intentionally omits it, close this row. Missing — confirm with design
Updated login / welcome background Full-screen background on LoginPage. Currently background_welcome.png (186 KB PNG). The UI Refresh login screen design has not been confirmed as using the same artwork. PNG @3x or SVG If the UI Refresh login screen design keeps the existing artwork, mark this Keep. If redesigned, supply replacement via SharePoint. Review — may need update
Jumpseat granted graphic Full-bleed illustration shown on the Jumpseat Tool "access granted" state card. Currently img_access_granted.png (71 KB). PNG @3x or SVG UI Refresh may redesign the Jumpseat Tool cards. Confirm whether artwork is being updated. Review — may need update
Jumpseat denied graphic Full-bleed illustration shown on the Jumpseat Tool "access denied" state card. Currently img_access_denied.png (48 KB). PNG @3x or SVG Pair with granted graphic above. Review — may need update
Membership card background — blue Background for MembershipCardPage. Currently img_alpa_logo_blue_background.png (675 KB — oversized for a bundled PNG). SVG preferred; PNG @3x if raster needed Large file size suggests this was not optimized. Request an SVG from the design team; if the layout is token-driven in the UI Refresh, this may be replaced entirely by a Surface/Brand background + logo component. Review — optimize or replace
Orange card background — yellow Background for OrangeCardPage. Currently img_alpa_logo_yellow_background.png (123 KB). SVG preferred Same consideration as membership card. Confirm whether this page exists in the UI Refresh scope. Review

ALPA Brand Assets — Keep

Core ALPA identity marks. These are not replaceable by FA/Material and must remain bundled.

FileSizePurposeStatus
alpa_logo.png 41 KB ALPA wordmark / color logo. Used in app chrome and login flow. Keep
alpa_logo_notification.svg 47 KB ALPA mark for push notification payloads (Android notification icon source). Keep
alpa_push_notification_icon.png 0.7 KB Compiled push notification icon (small, monochrome). Registered in Android manifest. Keep
AppIcon/appicon.svg App icon source used by MAUI to generate all platform icon sizes at build time. Keep
AppIcon/appiconfg.svg Foreground layer of the adaptive icon (Android). Keep
Splash/splash.svg Splash screen artwork. MAUI generates platform splash assets from this at build time. Keep

Backgrounds & Illustrations — Currently Bundled

FileSizePurpose / ScreenStatus
background_welcome.png 186 KB Full-screen background on LoginPage. Displayed behind the login form on the welcome/login screen. Review — see Missing table
img_main_cabin.jpg 552 KB Main cabin interior photo. Usage in current codebase TBD — may be used as a fallback content image or background on a feature screen. Review — confirm usage
img_alpa_logo_blue_background.png 675 KB ALPA logo on navy background. Used on MembershipCardPage. Review — optimize / may replace
img_alpa_logo_yellow_background.png 123 KB ALPA logo on yellow background. Used on OrangeCardPage. Review

Third-Party Partner Logos — Keep

These are licensed marks from partner organizations and cannot be replaced by FA/Material or token-driven surfaces.

FileSizePurposeStatus
img_kcm_white.png 63 KB Known Crewmember (KCM) program logo in white, used on KCMHomePage. Keep
img_jumpseat_logo.png 47 KB Jumpseat program logo. Keep
jumpseat_logo.png 32 KB Jumpseat logo — appears to be a duplicate of img_jumpseat_logo.png. Consolidate to one file. Review — likely duplicate

Jumpseat Tool Status Graphics

FileSizePurposeStatus
img_access_granted.png 71 KB Illustration shown on the Jumpseat "access granted" result card. Used in JumpseatToolCardViewModel_Granted. Review — see Missing table
img_access_denied.png 48 KB Illustration shown on the Jumpseat "access denied" result card. Used in JumpseatToolCardViewModel_Denied. Review — see Missing table

Advocacy Content Images — Keep

Historical and advocacy-campaign imagery. These are content assets, not UI chrome — they must remain bundled because they are referenced by the Advocacy screen ViewModel and cannot be swapped for FA/Material icons.

FileSizeSubjectStatus
icn_advocacy_behncke_1931.png5.2 KBDavid Behncke, ALPA founder (1931 photo)Keep
icn_advocacy_behncke_black.png6.9 KBDavid Behncke portrait (black & white)Keep
icn_advocacy_capitol.png4.9 KBUS Capitol building — advocacy/legislative campaignsKeep
icn_advocacy_century.png5.1 KBALPA centenary campaign imageKeep
icn_advocacy_coffee.png5.3 KBCoffee/outreach campaign imageKeep
icn_advocacy_max.png206 KBBoeing 737 MAX advocacy campaign photo (large — consider optimizing)Keep — optimize size
icn_advocacy_nonmember.png4.7 KBNon-member outreach imageryKeep
icn_advocacy_president.png5.1 KBALPA president/leadership photoKeep

Custom Vector Icons (Figma — interim set in use)

The canonical ALPA icon set lives on Figma page 🖤 Icons (3:7, section "General Use Icons" 233:302) — a bespoke vector set, not FontAwesome/Material. These are the interim assets in use now (exported as SVG; the BottomNav tab bar already references them). An icon-font path remains forward work (DQ-17). Discrepancy capture: foundations-reconciliation.html#icons.

Do not overwrite committees.svg and phone.svg on re-export — they are referenced by the mock UI (MockWidgetApiService) and a style-only re-export silently changed them in a prior pass. The other ~29 vectors are additive/safe.
Figma symbolNodeRoleStatus
i-search233:293Search affordanceVector (interim)
i-search-history5287:15214Recent-search affordanceVector (interim)
i-caret / chevron233:297 / 5236:15551Disclosure / list chevronVector (interim)
i-back / i-arrow / i-arrow-right / i-arrow-left4084:2861 / 4860:31302 / 233:299 / 2588:4272Navigation arrowsVector (interim)
i-close2319:1929DismissVector (interim)
hamburger2842:306Menu toggleVector (interim)
i-mail2196:2564Mail / contactVector (interim)
avatar / i-avatar4038:3343 / 4105:5931User avatarVector (interim)
i-favorites / i-star / i-heart (Default/selected)4038:3368 / 4491:12868 / 5192:15185Favorite / ratingVector (interim)
i-home / home4038:3367 / 5161:17066Home (in-app icon + brand mark)Vector (interim)
i-phone4055:4588Phone / hotline (do not overwrite phone.svg)Vector — mock-linked
i-committees / united/committee4081:4687 / 5172:15025Committees (do not overwrite committees.svg)Vector — mock-linked
i-action4081:4689Action / CTAVector (interim)
i-jumpseat / plane4081:4712 / 4535:14159Jumpseat / flightVector (interim)
ftdt / i-cal5161:17048 / 4444:8294FTDT / calendarVector (interim)
i-notifications / notifications (badge composite)4120:7144 / 4120:7130Notifications + unread badgeVector (interim)
i-filter4325:6598FilterVector (interim)
i-trash4444:8306DeleteVector (interim)
check4562:8918Confirmation / checklistVector (interim)
icon-generic4038:3392Generic placeholder glyphVector (interim)
yoke / pilot5161:17050 / 5161:17049ALPA brand marks (28px)Brand mark
united/hotel / united/rep5172:15026 / 5172:15027Partner (United) marksPartner mark

Legacy Icon PNGs — old "Replace with FA/Material" candidates

Correction (2026-06-29): the heading and "Suggested FA / Material" column below reflect the superseded assumption that standard icons would come from an icon font. The current/interim path is the custom Figma vector set above; an icon font is forward work (DQ-17). Read the fa-* column as a historical candidate mapping only — confirm the real glyph against the Figma vector before implementing.

These PNG files were created before any icon-system decision. They should still be removed from Resources/Images/ at the ALPAMobile.Presentation asset-bundling pass, but their replacement is the custom vector (interim) / icon font (forward), not necessarily the FA glyph suggested here.

Home Screen Button Icons (icn_home_*)

These drove the old static home screen button grid. In the UI Refresh the home screen is server-driven via the dynamic feed; button icons come from the Image field on ButtonViewModel (a remote URL or FA class name). The bundled PNGs are no longer needed.

FileSizeFeature / DestinationSuggested FA / MaterialStatus
icn_home_advocacy.png1.2 KBAdvocacy screen buttonfa-bullhornReplace → FA
icn_home_dart.png2.7 KBDART feature buttonfa-bullseyeReplace → FA
icn_home_ftdt.png1.2 KBFlight Time / Duty Time buttonfa-calendar-checkReplace → FA
icn_home_hotline.png30 KBPilot Hotline buttonfa-phoneReplace → FA
icn_home_jumpseat.png0.9 KBJumpseat tool buttonfa-planeReplace → FA
icn_home_jumpseat_flightfinder.png2.4 KBFlight Finder button (jumpseat context)fa-magnifying-glassReplace → FA
icn_home_kcm.png1.8 KBKCM screen buttonfa-id-badgeReplace → FA
icn_home_megaphone.png1.0 KBComms / Megaphone buttonfa-megaphoneReplace → FA
icn_home_membersearch.png2.5 KBMember Search buttonfa-usersReplace → FA
icn_home_pilot.png1.6 KBPilot profile / membership buttonfa-user-pilotReplace → FA
icn_home_pps.png12 KBPPS (Pilot Protection Services) buttonfa-shieldReplace → FA
icn_home_resources.png0.8 KBResources buttonfa-book-openReplace → FA
icn_home_soar.png39 KBSOAR program buttonfa-arrow-up-right-dotsReplace → FA
icn_home_sts.png13 KBSTS (Safety) buttonfa-triangle-exclamationReplace → FA
FileSizePurposeSuggested FA / MaterialStatus
icn_nav_ftdt.png0.9 KBBottom nav tab — FTDTfa-calendar-checkReplace → FA
icn_nav_jumpseat_flight_finder.png1.9 KBBottom nav tab — Flight Finderfa-plane-departureReplace → FA
icn_menu_contacts_blue.png0.5 KBHamburger menu — Contacts itemfa-address-bookReplace → FA
icn_menu_hotline_blue.png0.5 KBHamburger menu — Hotline itemfa-phoneReplace → FA
icn_menu_logout.png0.6 KBHamburger menu — Logout itemfa-arrow-right-from-bracketReplace → FA
icn_menu_megaphone.png1.0 KBHamburger menu — Comms itemfa-megaphoneReplace → FA
icn_menu_settings_blue.png0.8 KBHamburger menu — Settings itemfa-gearReplace → FA

Screen Title Icons (icn_title_*)

Used as leading icons in screen title bars. In the UI Refresh component library these are covered by the Top Navigation component; confirm with design whether per-screen title icons remain or are replaced by a uniform Top Navigation pattern.

FileSizeScreenSuggested FA / MaterialStatus
icn_title_advocacy.png0.9 KBAdvocacy screen titlefa-bullhornReplace → FA
icn_title_jumpseat.png0.6 KBJumpseat screen titlefa-planeReplace → FA
icn_title_kcm.png0.7 KBKCM screen titlefa-id-badgeReplace → FA
icn_title_megaphone.png0.8 KBComms screen titlefa-megaphoneReplace → FA
icn_title_membership.png0.6 KBMembership screen titlefa-id-cardReplace → FA
icn_title_pilot.png1.0 KBPilot/Profile screen titlefa-user-pilotReplace → FA

UI Chrome Icons

FileSizePurposeSuggested FA / MaterialStatus
icn_bell.png1.2 KBNotifications bell (unread)fa-bellReplace → FA
icn_bell_badge.png2.0 KBNotifications bell with badge dotfa-bell + CSS badgeReplace → FA
icn_chevron_right_gray.png4.8 KBList row disclosure indicatorfa-chevron-rightReplace → FA
icn_circle.png4.1 KBGeneric filled circle (status dot or bullet)fa-circleReplace → FA
icn_user.png1.3 KBUser avatar placeholder (small)fa-user or Material personReplace → FA
icn_user_big_blue.png4.3 KBUser avatar placeholder (large, blue)fa-circle-userReplace → FA
icn_login_eye.png1.0 KBPassword show togglefa-eyeReplace → FA
icn_login_eye_cross.png1.3 KBPassword hide togglefa-eye-slashReplace → FA

Remote URL Assets — Not Bundled

These assets are served from the API at runtime and are not bundled in the app binary. The client receives a URL in the API response and loads them via the image loading pipeline. No SharePoint delivery required — the backend team owns these.

AssetFieldSourceNotesStatus
Hero Card image CardHeroViewModel.Image Dynamic feed API response (ItemDto.Image) URL to editorial/campaign photo displayed in the hero card (200 px tall image area). Content managed by backend/CMS. Remote URL
Text card image CardTextViewModel.Image Dynamic feed API response Optional accompanying image on content cards. URL from backend. Remote URL
Button card icon ButtonViewModel.Image Dynamic feed API response Icon or thumbnail for feature buttons in the server-driven home feed. Backend provides URL or FA class name. Remote URL
Pilot / member avatar PilotCard.AvatarUrl User profile API Profile photo. Falls back to fa-circle-user avatar icon when absent. Remote URL
MEC brand logo ThemeResponse.LogoUrl (planned) Theme endpoint Per-MEC airline logo (UAL, DAL, FDX). Delivered by the theme endpoint, not bundled. Pending theme endpoint build (OT-1). Remote URL

Dev Artifacts — Remove

FileSizeReasonStatus
dotnet_bot.png 68 KB Default .NET MAUI project template mascot. Not used in ALPA Mobile. Removed 2026-06-26 via git rm on branch docs/dynamic-ui-specs. Removed ✓

SharePoint Delivery Checklist

When the design team provides the SharePoint folder, confirm the following are included:

#AssetFormat RequiredPriority
1 Home screen hero / background illustration (or confirmation it was intentionally removed) SVG (preferred) or PNG @3x High — blocks home screen spec closure
2 Login / welcome screen background (updated or confirmed unchanged) PNG @3x or SVG High — blocks login screen scaffold
3 Jumpseat access-granted & access-denied illustrations (updated or confirmed unchanged) SVG preferred; PNG @3x accepted Medium — Jumpseat tool scaffold
4 Membership card and Orange card backgrounds (updated SVG, or confirmation token-based) SVG preferred Medium
5 Futura PT Medium, Demi, and Heavy .otf font files (see DQ-4) .otf High — required before the ALPAMobile.Presentation font-bundling pass
Naming convention for SharePoint delivery: Files should match the existing Resources/Images/ naming pattern — lowercase, underscores, no spaces. New assets for UI Refresh should use the v2_ prefix (e.g. v2_background_welcome.png) so they can coexist with the current file during the transition period and be swapped in atomically at the scaffold build.

ALPA Mobile Team · Asset Inventory (living) · Updated 2026-06-26 · Sources: ALPAMobile/Resources/Images/, Figma re-sync 2026-06-10, dynamic feed contract, theme endpoint contract · Gated on AB#2087