A modular, aesthetic dashboard companion for Fastfetch. Turn your terminal into a real-time progress tracker.
β¨ Features β’ π¦ Installation β’ π Tokens β’ π€ Contributing β’ π License
Standard fetch tools provide a static snapshot of your hardware. SocialFetch makes your terminal feel alive by pulling your actual, real-time progress. Whether it's tracking 42,813 Manga chapters on Kitsu or your 1,540 Reddit karma, SocialFetch brings your digital life into your terminal dashboard.
- π₯οΈ Windows Native: Built from the ground up to leverage PowerShell 5.1+ and Windows Terminal capabilities.
- β‘ Smart Caching: Automatic JSON-based caching ensures Fastfetch remains instant, even on low-end hardware.
- π§© Fully Modular: Add or remove platforms easily by dropping
.ps1scripts into thesrc/directory.
Recommended for most users.
- Click the Download Latest button above.
- Download the
SocialFetch-vX.X.zipfile. - Extract the folder into your Fastfetch config directory:
- Path:
%USERPROFILE%\.config\fastfetch\ - You should end up with a folder named
SocialFetchinsidefastfetch.
- Path:
Use this if you plan to edit the code or contribute.
Open PowerShell and clone the project into your Fastfetch configuration directory:
cd $env:USERPROFILE\.config\fastfetch
git clone [https://github.com/as280093/SocialFetch.git](https://github.com/as280093/SocialFetch.git) SocialFetchPrepare your configuration files by renaming the examples:
- Rename
.env.exampleto.env - Rename
config/settings.conf.exampletoconfig/settings.conf
Update your config.jsonc using the %USERPROFILE% variable to ensure universal path compatibility:
SocialFetch follows a Strict Official API Policy.
Important
No Web Scraping: To ensure long-term stability and user security, SocialFetch only supports official REST APIs. We do not support modules that use headless browsers (Puppeteer/Selenium) or unofficial scraping methods that violate Platform Terms of Service.
| Platform | Access Type | How to Get |
|---|---|---|
| GitHub | Public / Private | GitHub Developer Settings |
| Steam | Public Data | Steam Web API Key |
| Simkl | OAuth 2.0 | Simkl API Settings |
| AniList | GraphQL API | AniList Developer Portal |
- Public Mode: If no
GITHUB_TOKENis provided in.env, the script fetches only public repositories and followers using theusers/$Userendpoint. - Private Mode: Providing a token with
read:userscope allows the script to hit the/userendpoint to include your private repositories and gists in the total count.
If you want to contribute a new platform module (src/PlatformName.ps1), you must follow these rules:
- Official APIs Only: Your module must use
Invoke-RestMethodorInvoke-WebRequestagainst an official endpoint. - Approved Verbs: PowerShell functions must use approved verbs (e.g.,
Get-Stats,Invoke-Fetch). - No Secrets in Code: Use the
$Context.Secretsobject to access tokens. Never hardcode keys. - Caching: All data must be returned to
main.ps1for centralized JSON caching.
If a module isn't displaying correctly or you see an error, please Open an Issue with the following details:
- Environment: Your PowerShell version (Run
$PSVersionTable.PSVersionin your terminal). - The Module: Which platform is failing? (e.g.,
AniList.ps1,Steam.ps1). - Debug Logs: This is the most important part! Run the module manually in Debug Mode and paste the output.
Open PowerShell and run the controller script with the -DebugMode flag:
powershell -File "%USERPROFILE%\.config\fastfetch\SocialFetch\bin\main.ps1" -Module Reddit -DebugModeTip
Replacing Reddit with the name of the failing module (e.g., Anilist) will help isolate the issue. If the error contains your Private API Tokens, please censor them before posting!
SocialFetch is distributed under the MIT License.
Built for the community. Stay aesthetic.

{ "type": "command", "key": "Reddit ", "keyColor": "red", "text": "%USERPROFILE%/.config/fastfetch/SocialFetch/bin/run.bat Reddit red" }