How nacoliu/opensteameya works
SteamEYA is a Windows desktop tool for signing into Steam with EYA tokens and managing associated accounts and CS2 features. The main workflow starts at the login page: resolve manual credentials or a license key, validate the token, then prepare and launch the local Steam client; account history and CS2 status are updated alongside related actions. Other documented branches cover loadout presets, profile personalization, workshop cleanup, cloud settings, localization, and updates. The tree and sampled excerpts support the page-to-service links shown; unsampled subsystem internals are represented at their exact service paths, with uncertain wiring omitted.
Main entry points: LoginPage.xaml.cs Login Page · AppState.cs App State · HistoryPage.xaml.cs History Page · AccountHistoryService.cs Account History
Components 29
Desktop UI
- Login Page
SteamEyaWinUI/Pages/LoginPage.xaml.cs - History Page
SteamEyaWinUI/Pages/HistoryPage.xaml.cs - Loadout Page
SteamEyaWinUI/Pages/LoadoutPage.xaml.cs - Settings Page
SteamEyaWinUI/Pages/SettingsPage.xaml.cs - Personalization Page
SteamEyaWinUI/Pages/PersonalizationPage.xaml.cs
Steam Login
- JWT Tokens
SteamEyaWinUI/Services/JwtTokenService.cs - License Lookup
SteamEyaWinUI/Services/SteamLicenseClient.cs - Steam Login
SteamEyaWinUI/Services/SteamLoginService.cs - Steam Paths
SteamEyaWinUI/Services/SteamPathCoordinator.cs - Steam Process
SteamEyaWinUI/Services/SteamProcessService.cs - Steam Client
SteamEyaWinUI/Services/SteamCmClient.cs
Account Management
- Account History
SteamEyaWinUI/Services/AccountHistoryService.cs - Login Cache
SteamEyaWinUI/Services/SteamLoginCacheService.cs - Profile Service
SteamEyaWinUI/Services/SteamProfileService.cs - History Records
SteamEyaWinUI/Models/SteamAccountHistoryItem.cs
CS2 Features
- Premier Status
SteamEyaWinUI/Services/CsPremierScoreService.cs - Loadout Service
SteamEyaWinUI/Services/CsLoadoutService.cs - Cloud Settings
SteamEyaWinUI/Services/Cs2CloudService.cs - Cloud Push Worker
SteamEyaWinUI/Services/Cs2CloudPushWorker.cs - GC Session
SteamEyaWinUI/Services/CsGcSession.cs - Workshop Cleanup
SteamEyaWinUI/Services/SteamWorkshopService.cs
App Services
- App State
SteamEyaWinUI/Services/AppState.cs - Settings Storage
SteamEyaWinUI/Services/SettingsService.cs - Localization
SteamEyaWinUI/Localization/Loc.cs - Update Service
SteamEyaWinUI/Services/GitHubUpdateService.cs - Update Installer
SteamEyaWinUI/Services/UpdateInstallerService.cs
Other components
- User
- Steam Client
- GitHub Releases
Connections 36
- User → Login Page: enter credentials
- User → History Page: manage accounts
- User → Loadout Page: edit presets
- User → Settings Page: change settings
- Login Page → App State: access services
- History Page → App State: access services
- Loadout Page → App State: access services
- Personalization Page → App State: access services
- Settings Page → App State: access services
- App State → Settings Storage: loads and saves
- App State → Update Service: provides service
- Login Page → License Lookup: resolves license
- Login Page → JWT Tokens: validates token
- Login Page → Steam Paths: resolves install
- Login Page → Steam Login: requests login
- Steam Login → Steam Process: stops or starts
- Steam Login → Steam Client: authenticates via
- Steam Client → Steam Client: connects
- Login Page → Account History: records account
- History Page → Account History: queries and edits
- Account History → History Records: reads and writes
- Account History → Profile Service: refreshes profiles
- Login Cache → Steam Client: fetches profile
- Login Page → Premier Status: queries status
- History Page → Premier Status: refreshes status
- Loadout Page → Loadout Service: equips preset
- Loadout Service → Steam Client: uses CM session
- Loadout Service → GC Session: sends GC messages
- Login Page → Cloud Settings: pushes settings
- Cloud Settings → Cloud Push Worker: launches helper
- Cloud Push Worker → Steam Client: updates cloud files
- Login Page → Workshop Cleanup: cleans subscriptions
- Settings Page → Localization: selects language
- Localization → Settings Storage: persists choice
- Update Service → GitHub Releases: checks releases
- Update Service → Update Installer: downloads update