Skip to content

Latest commit

 

History

History
358 lines (257 loc) · 12.7 KB

File metadata and controls

358 lines (257 loc) · 12.7 KB

steam--v2

Steam Stat

Steam Game Statistics & Analytics Tool


🌍 Languages | 语言

简体中文 | English (Current)


📖 Introduction

Steam Stat is a Windows desktop application designed specifically for Steam users to help players gain deep insights into their Steam game library and playtime statistics. Through local data analysis and visual charts, you can clearly view game usage patterns, playtime trends, and account statistics.

✨ Why Choose Steam Stat?

  • 🔒 Privacy First: All data is stored locally and never uploaded to any server
  • 📊 Data Visualization: Provides intuitive charts and statistical analysis using ECharts
  • High Performance: Built on ElectronNET and Vue 3, powered by .NET 10 backend, for fast responses
  • 🎨 Modern UI: Uses Element Plus and UnoCSS for a beautiful and user-friendly interface, supports light/dark themes
  • 🔄 Real-time Monitoring: Automatically detects game running status and records playtime in real-time
  • 👤 User Management: Quick Steam user switching with multiple online status options

📦 Installation & Usage

Download and Install

  1. Go to the Releases page
  2. Download the latest Steam-Stat-Setup-x.x.x.exe installer
  3. Run the installer and follow the prompts to complete installation
  4. Launch Steam Stat and start using it

System Requirements

  • Operating System: Windows 10 / 11 (64-bit)
  • Steam: Steam client must be installed

🚀 Main Features

  • Steam Status

    • Display local Steam running status
    • Show local Steam library directories
    • Display logged-in Steam users
  • Steam User Information

    • Display information for Steam users logged in locally
    • Show user SteamID and AccountID
    • Display user account name and persona name
    • Quick Steam user switching support
    • Support switching users with multiple online states (Offline, Invisible, Online, Busy, Away, Snooze, Looking to Play, etc.)
  • Steam App Information

    • Automatically scan and sync local Steam app library
    • Display detailed app information (name, installation path, disk usage, etc.)
    • Support multiple Steam library folders
    • Show currently running Steam apps
  • Steam Usage Statistics

    • Record Steam app running duration in real-time
    • Support statistics by playing user
    • Support statistics by playing time period
    • Display Steam app playtime distribution using ECharts
    • Display Steam app daily playtime using ECharts
    • Display Steam app launch frequency statistics using ECharts
    • Display Steam app playtime trends using ECharts
  • Automatic Data Collection

    • Automatically detect Steam app running status
    • Automatically record Steam app running duration
    • Freely configure whether to enable automatic data collection and collection interval
  • Local Data Storage

    • Use SQLite database for persistent data storage
    • Entity Framework Core provides type-safe data access
    • Automatic database structure migration and version management
  • Multi-language Support

    • Simplified Chinese interface
    • English interface
  • Theme Support

    • Light mode support
    • Dark mode support
    • Auto follow system theme
    • Manual theme switching
  • Auto Update

    • Integrated electron-builder + NSIS installer
    • Support automatic updates from GitHub Releases

🎯 Future Plans

Only represents current plans, not guaranteed to be implemented, will be adjusted based on demand.

If you have good suggestions, feel free to submit them in Issues.

  • More Comprehensive Statistics

    • Add more dimensional statistics to Steam usage statistics interface
  • Cross-platform Support

    • macOS version
    • Linux version
  • Add More Data Sources

    • Current data sources are all local
    • Consider adding Steam Web API as data source
    • Users can switch data sources
    • Users can choose whether to log in for more detailed data (all data stored locally only)
  • Steam Friends Statistics (requires more data sources)

    • View friends' game time
    • Compare game libraries with friends
    • Recommend games based on shared ownership
  • Achievement Features (requires more data sources)

    • Game achievement completion statistics
    • Achievement unlock timeline
    • Rare achievement display
    • Compare achievements with friends
  • Game Tags and Categories (requires more data sources)

    • Custom game tags
    • Filter by type, publisher, etc.
    • Favorites feature

📸 Screenshots

Steam Status

Steam Status

Steam User Information

Steam User Information

Steam App Information

Steam App Information

Steam Usage Statistics

Steam Usage Statistics

🛠️ Technology Stack

Core Frameworks

  • Electron.NET - Cross-platform desktop application framework based on Electron + .NET
  • .NET 10 - Backend runtime framework
  • Vue 3 - Progressive JavaScript framework
  • Vite - Next generation frontend build tool
  • Fantastic Admin Basic - A Vue 3 based frontend system framework

UI Frameworks & Styling

  • Element Plus - Vue 3 based component library
  • UnoCSS - Instant on-demand atomic CSS engine
  • ECharts - Data visualization chart library
  • Iconify - Modern icon library
  • Icon8 - Modern icon library, icons used in the project can NOT be redistributed.

Data Storage

Utility Libraries

  • Pinia - Vue 3 state management
  • VueUse - Collection of Vue Composition API utilities
  • Day.js - Lightweight time processing library

Steam Related

Development Tools


🔧 Development Guide

Environment Setup

Make sure the following tools are installed:

Clone Repository

git clone https://github.com/DYH1319/steam-stat.git
cd steam-stat

Install Dependencies

pnpm install

Development Mode

# Dotnet First
cd ElectronNet/ElectronNet
dotnet run -lp "Development (Dotnet First)"

Build Application

# Build Windows version (frontend + .NET backend + electron-builder packaging)
pnpm run build:win

Database Management

# Add EF Core database migration
cd ElectronNet/ElectronNet
dotnet ef migrations add <MigrationName>

# Update database (the app auto-migrates on startup)
dotnet ef database update

🤝 Contributing

Welcome to submit Issues and Pull Requests!

Submit Issue

  • 🐛 Bug Report: Please describe the steps to reproduce the problem in detail
  • 💡 Feature Request: Please explain the use case and expected outcome
  • Help Wanted: Please check documentation and existing Issues first

Submit Pull Request

  1. Fork this repository
  2. Create branch (git checkout -b feature/AmazingFeature)
  3. Commit changes (git commit -m 'Add some AmazingFeature')
  4. Push to branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Development Standards

  • Follow Conventional Commits specification
  • Write type-safe code using TypeScript
  • Pass all ESLint and TypeScript checks
  • Write comments and documentation for new features

📄 License

This project is licensed under the MIT License.

For details, please see the LICENSE file.

Copyright Notice

MIT License

Copyright (c) 2025-2026 DYH1319

🙏 Acknowledgments

Thanks to the following projects and communities:

  • Electron.NET - Cross-platform desktop application framework based on Electron + .NET
  • Vue.js - Elegant progressive framework
  • Fantastic Admin Basic - A Vue 3 based frontend system framework
  • Element Plus - Beautiful Vue 3 component library
  • ECharts - Professional data visualization library
  • Entity Framework Core - .NET official ORM framework
  • Icon8 - Modern icon library, icons used in the project can NOT be redistributed.
  • All developers who have contributed to this project

📬 Contact

  • Author: DYH1319
  • GitHub: @DYH1319
  • Issues: Submit Bug / Suggest Feature
  • Email: dyh@dyh1319.asia
  • Other: This is my first open source project. The original intention was to record my daily Steam usage and better manage my game time. I welcome criticism and correction from all experts. I also welcome improvement suggestions from everyone to improve this project together ❤️

⭐ Star History

If this project helps you, please give it a Star ⭐️!

Star History Chart

Translated by Claude Opus 4.6 Thinking Made with ❤️ by DYH1319