Skip to content

Gamepulse/PPGLM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

43 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Pascal's Personal Game Library Manager (PPGLM)

A modern desktop application for managing your game library. Scans your folders, automatically fetches game metadata from IGDB, and organizes your collection with tags, ratings, and notes.

Pascal Platform License

Features

  • ๐Ÿ“ Smart Folder Scanning - Scan game directories with automatic detection and matching
  • ๐ŸŽฎ IGDB Integration - Automatically fetches game metadata (synopsis, ratings, genres, game modes, themes)
  • โญ Personal Ratings - Rate your games and add personal notes
  • ๐Ÿท๏ธ Tag System - Organize games with custom tags and categories
  • ๐ŸŒ Multi-language - English and French support
  • ๐ŸŒ“ Themes - Dark and light mode
  • ๐Ÿ’พ Local Database - All data stored locally in SQLite
  • ๐Ÿ“ค Export/Import - Backup and restore your collection
  • ๐Ÿš€ Game Launcher - Launch games directly from the app
  • โž• Quick Add - Manually add games with IGDB integration
  • ๐Ÿ“Š Statistics - View library analytics and insights
  • ๐Ÿ“ Collections - Organize games into custom collections
  • ๐Ÿ“ธ Screenshots - Add and manage game screenshots
  • ๐Ÿ” Search History - Track your search activity
  • โญ Favorites - Mark games as favorites
  • โฑ๏ธ Play Time - Track hours played per game
  • ๐ŸŽฏ Completion Status - Track game completion (Not Started, Playing, Completed, Dropped, Wishlist)
  • ๐Ÿ’ฟ Cross-Platform - Windows, macOS, and Linux support

Screenshots

Coming soon

Installation

From Release

Download the latest installer for your platform from the Releases page:

Platform File Instructions
Windows .msi Run the installer
Windows .msix Microsoft Store package (install via Store or sideload)
macOS .dmg Open the DMG, drag to Applications
Linux .AppImage or .deb chmod +x then run, or install with dpkg

Microsoft Store (Recommended for Windows)

Get the official release from the Microsoft Store for automatic updates and trusted installation:

  • No Windows SmartScreen warnings
  • Automatic updates
  • Clean installation/uninstallation
  • Pascal on Microsoft Store (coming soon)

Build from Source

Prerequisites

Platform-specific requirements:

Platform Additional Requirements
Linux libwebkit2gtk-4.1-dev, build-essential, libssl-dev, libayatana-appindicator3-dev, librsvg2-dev
macOS Xcode Command Line Tools (xcode-select --install)
Windows Microsoft Visual Studio C++ Build Tools

Steps

# Clone the repository
git clone https://github.com/Gamepulse/PPGLM.git
cd PPGLM

# Install dependencies
npm install

# Run in development mode
npm run tauri dev

# Or build for production
npm run tauri build

The built installer will be in src-tauri/target/release/bundle/ (subfolder varies by platform)

Usage

Getting Started

  1. Configure IGDB API (optional but recommended)

    • Go to IGDB API and get credentials
    • Open Pascal โ†’ Settings โ†’ IGDB Credentials
    • Enter your Client ID and Client Secret
  2. Add Game Folders

    • Go to Scanner โ†’ Add Folder
    • Select your game directories (e.g., ~/Games, /mnt/games, D:\SteamLibrary)
  3. Scan

    • Click "Scan All Folders" to discover games
    • Pascal will automatically match folders with IGDB database

Game Details

Click on any game to see its details:

  • Synopsis - Game description from IGDB
  • Community Rating - IGDB user rating
  • Genres - Game categories
  • Game Modes - Single player, multiplayer, etc.
  • Perspectives - First person, third person, etc.
  • Personal Rating - Your own 1-100 rating
  • Notes - Your personal comments
  • Tags - Custom organization
  • Completion Status - Track your progress
  • Play Time - Hours played
  • Favorites - Mark games you love
  • Screenshots - View and add screenshots
  • Launch - Start the game directly

Refresh from IGDB

If game data is missing or outdated, click "Refresh from IGDB" on the game detail page to fetch the latest information.

Collections & Statistics

  • Collections - Group games into custom collections (e.g., "Favorites", "To Play", "Completed")
  • Statistics - View insights about your library: total games, play time, ratings distribution, completion status

Configuration

Settings

Setting Description
Language English / Franรงais
Theme Dark / Light
IGDB Credentials API access for game metadata
Scan Files Also scan individual game files
Folder Exclusions Patterns to exclude from scanning
Quick Add Manually add games to your library
CSV Export Export your collection to CSV format

Database Location

All data is stored in:

  • Windows: %APPDATA%\com.pascal.gamemanager\pascal.db
  • macOS: ~/Library/Application Support/com.pascal.gamemanager/pascal.db
  • Linux: ~/.local/share/com.pascal.gamemanager/pascal.db

Tech Stack

  • Frontend: React 19, TypeScript, TailwindCSS
  • Backend: Rust, Tauri 2.0
  • Database: SQLite
  • API: IGDB (Internet Game Database)

Project Structure

pascal/
โ”œโ”€โ”€ src/                    # React frontend
โ”‚   โ”œโ”€โ”€ components/         # UI components
โ”‚   โ”œโ”€โ”€ hooks/             # React hooks
โ”‚   โ”œโ”€โ”€ i18n/              # Translations
โ”‚   โ”œโ”€โ”€ theme/             # Theme configuration
โ”‚   โ””โ”€โ”€ types/             # TypeScript types
โ”œโ”€โ”€ src-tauri/             # Rust backend
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ commands/      # Tauri commands
โ”‚   โ”‚   โ”œโ”€โ”€ db/            # Database & migrations
โ”‚   โ”‚   โ””โ”€โ”€ models/        # Data models
โ”‚   โ””โ”€โ”€ Cargo.toml
โ”œโ”€โ”€ docs/                  # Documentation
โ””โ”€โ”€ package.json

Contributing

  1. Create a feature branch (git checkout -b feature/amazing-feature)
  2. Commit your changes (git commit -m 'Add amazing feature')
  3. Push to the branch (git push origin feature/amazing-feature)
  4. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • IGDB for providing the game database API
  • Tauri for the desktop framework

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors