Summary
Add --structure option to customize which modules are displayed and in what order, inspired by fastfetch.
Available Modules
| Module |
Description |
Title |
username@Steam |
Separator |
Horizontal line |
Member |
Account age in years |
Level |
Steam level |
Games |
Total games owned |
Unplayed |
Unplayed games count and % |
Playtime |
Total playtime in hours |
Perfect |
Perfect games count |
Achievements |
Total achievements and % |
TopPlayed |
Top played games list |
RecentlyPlayed |
Recently played (2 weeks) |
Rarest |
Rarest achievement |
Break |
Empty line |
Colors |
Color palette blocks |
Interface
# Show only specific modules
steamfetch --structure "Title:Separator:Level:Games:Playtime"
# Minimal output
steamfetch --structure "Title:Games:Playtime"
# Full output with breaks
steamfetch --structure "Title:Separator:Member:Level:Games:Unplayed:Playtime:Perfect:Achievements:Break:TopPlayed:Break:RecentlyPlayed:Break:Rarest"
Implementation
- Parse
--structure string into module list
- Create trait
Module with render() method
- Implement each module as a struct
- Default structure matches current output
Summary
Add
--structureoption to customize which modules are displayed and in what order, inspired by fastfetch.Available Modules
TitleSeparatorMemberLevelGamesUnplayedPlaytimePerfectAchievementsTopPlayedRecentlyPlayedRarestBreakColorsInterface
Implementation
--structurestring into module listModulewithrender()method