Phalcode / gamevault-app

Frontend for the self-hosted gaming platform for drm-free games
https://gamevau.lt
Other
402 stars 18 forks source link

Anonymous Analytics #398

Open Alfagun74 opened 7 months ago

Alfagun74 commented 7 months ago

To understand how people use GameVault better, we could track anonymous data both in the backend and on the frontend. This means we can collect information to see what parts of the software needs improving and which features users like the most.

The Microsoft Store gives us some basic numbers, but they're not very detailed.

We'll make sure users can choose to turn off this tracking if they want to.

Here are some examples of the information we could collect:

We currently use swetrix.com for website analytics. I believe we can also use their API to track data in these services.

Backend: https://github.com/Swetrix/swetrix-node Client: https://docs.swetrix.com/events-api

To-Do:

Settings

Heartbeat

Events we need

Implemented Event Tracking Name Metadata to track
image Start App APP_INITIALIZED App Settings, Hardware Info.
No Load Installed Games INSTALLED_GAMES_LOADED Count of Installed games, Row Count
No Load Server Games SERVER_GAMES_LOADED Count of total server games
No Filter Games SEARCH_FILTERS_CHANGED All Filters Used
No Start Download GAME_DOWNLOAD_STARTED Game Size, Game Type
No Abort Download GAME_DOWNLOAD_ABORTED Game Size, Game Type, Download Progress
No Pause Download GAME_DOWNLOAD_PAUSED Game Size, Game Type, Download Progress
No Resume Download GAME_DOWNLOAD_RESUMED Game Size, Game Type, Download Progress
No Finish Download GAME_DOWNLOAD_COMPLETED Game Size, Game Type
No Start Extraction GAME_EXTRACTION_STARTED Game Size, Game Type
No Abort Extraction GAME_EXTRACTION_ABORTED Game Size, Game Type, Extraction Progress
No Finish Extraction GAME_EXTRACTION_COMPLETED Game Size, Game Type
No Start Installation GAME_INSTALLATION_STARTED Game Size, Game Type
No Finish Installation GAME_INSTALLATION_COMPLETED Game Size, Game Type
No Start Uninstallation GAME_UNINSTALLATION_STARTED Game Size, Game Type
No Finish Uninstallation GAME_UNINSTALLATION_COMPLETED Game Size, Game Type
No Set A Games Progress (for you or somebody else) PROGRESS_CHANGED State
No Switch Community Profile COMMUNITY_PROFILE_VIEWED Opened Users Id
No Change Community Sorting COMMUNITY_SORTING_CHANGED Sorting Option
No Load Metadata Providers METADATA_PROVIDERS_LOADED List of used Providers and their priorities
No Search Metadata Provider for Remap METADATA_SEARCHED Provider Slug
No Map Metadata METADATA_MAPPED Provider Slug
No Unmap Metadata METADATA_UNMAPPED Provider Slug
No Change Provider Priority METADATA_PRIORITY_CHANGED Provider Slug, Priority

Track Errors

Swetrix also supports Error tracking!