Skip to content

Michaelcraun/vh-assistant

Repository files navigation

VH Assistant

VH Assistant is a SwiftUI companion app for Vault Hunters players who want to track playthrough progress across Apple devices. The current app centers on research management, crystal reference data, and lightweight playthrough persistence backed by Firebase.

What It Does

  • Create and manage multiple playthroughs.
  • Track knowledge points and skill points per character.
  • View Vault Hunters research groups and research costs.
  • Purchase research and automatically apply cost modifiers across groups.
  • Browse crystal types and their modifiers.
  • Persist playthrough data in Firebase Storage using anonymous auth.

Current Scope

The implemented experience is strongest around:

  • Research tracking
  • Crystal reference data
  • Playthrough storage and retrieval

The codebase also includes models and UI scaffolding for abilities, talents, and broader skill tracking, but those flows are not fully implemented yet.

Tech Stack

  • Swift
  • SwiftUI
  • Firebase Auth
  • Firebase Storage
  • Firebase Analytics / Crashlytics
  • Swift Package Manager

Project Structure

  • Shared/ contains the shared SwiftUI app, views, models, managers, and assets.
  • Data/ contains bundled Vault Hunters reference JSON files.
  • Tests iOS/ and Tests macOS/ contain platform test targets.
  • _ref/screenshots/ contains App Store style reference screenshots.

Screenshots

Playthrough list Research tracking Crystal reference

Requirements

  • Xcode with Swift Package Manager support
  • iOS 15.4+ for the iOS target
  • macOS 12.3+ for the macOS target
  • A valid Firebase configuration if you want to run the app against your own backend

Getting Started

  1. Open VH Assistant.xcodeproj in Xcode.
  2. Let Swift Package Manager resolve the Firebase and SwiftPath dependencies.
  3. Ensure GoogleService-Info.plist matches the Firebase project you intend to use.
  4. Build and run either the iOS or macOS target.

Data Flow

At launch, the app:

  1. Signs in anonymously with Firebase Auth.
  2. Downloads versioned Vault Hunters data from Firebase Storage.
  3. Parses research groups, researches, crystal data, and descriptions.
  4. Fetches the current user's saved playthrough files from Firebase Storage.

Playthrough progress is serialized to JSON and uploaded back to Firebase Storage.

Notes For Forks

  • The repo already includes a Firebase plist, but most forks should replace it with their own Firebase project configuration.
  • The current app version is hardcoded to the 1.16.5 Vault Hunters data set in the Firebase manager.
  • If you want the README to reflect future skill and talent tracking, the unfinished parsing and purchase flows should be completed first.

License

No license is currently specified in this repository. Add one before distributing or accepting outside contributions.

About

SwiftUI companion app for Vault Hunters that tracks playthrough research, points, and crystal data with Firebase-backed persistence.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors