Skip to content

Releases: BleedingXiko/GhostHub

GhostHub v5.3.0

Choose a tag to compare

@BleedingXiko BleedingXiko released this 25 May 16:50
8de5fbb

What's New

Media Browsing Overhaul

GhostHub’s media browsing system has been rebuilt around stable media records instead of fragile media list indexes. Streaming, Gallery, Search, Sync Mode, Chat sharing, TV casting, progress tracking, and GhostStream playback now resolve media through the same canonical media identity.

This improves reliability across large libraries, sorted views, filtered views, subfolders, gallery timelines, search results, shuffled playback, uploads, deletes, renames, hidden-content changes, and partially loaded views.

Theme Builder Overhaul

The theme builder has been heavily redesigned and refactored. The editor now feels more like a focused design workspace, with cleaner layout containment, improved control grouping, better preview behavior, and styling that follows the active GhostHub theme instead of fighting it.

Custom themes now use a simpler five-color contract: primary, accent, background, surface, and text. GhostHub derives the rest of the UI tokens from those colors, including buttons, cards, modals, inputs, borders, muted text, and theme builder controls.

Before After
Theme Builder before Theme Builder after

Security

  • /api/config no longer exposes python_config to non-admin users.
  • Sensitive Python-side settings, including tunnel secrets such as Pinggy access tokens, are now only included for admin sessions.
  • If your GhostHub was accessible to untrusted users before this update, rotate any exposed tunnel tokens.

Fixes

  • Sync Mode and shared-view navigation no longer depend on stale media indexes.
  • Chat commands now follow the new media viewer model.
  • TV casting progress restore and cast-state tracking now stay aligned with the media overhaul.
  • Cloudflare Tunnel URL capture now detects the generated trycloudflare.com URL more reliably.
  • Existing media delete, hide, and unhide actions now batch backend updates to reduce refresh churn and stale cards.
  • Upload refreshes coordinate better with Streaming and Gallery while uploads are still active.
  • Upload rate limiting now waits for capacity instead of prematurely rejecting chunks.
  • Hidden-content reveal no longer marks content visible before the admin request succeeds.
  • Theme and layout dropdowns no longer go blank on first boot or after stale custom theme references.
  • Theme-builder editing now keeps the app shell, gestures, swipe navigation, and scrolling contained while editing.

Docs

  • Updated architecture docs for the new media ordering, record hydration, manifest, selector, and invalidation model.
  • Updated the manual QA checklist for large-library media browsing.
  • Updated stress-test docs and tooling for session/admin auth, upload cleanup, and current media endpoints.
  • Updated README wording to mark GhostStream integration as experimental.
  • Updated README framework notes to describe RAGOT as the bundled frontend runtime.

Version

This is a minor release because it adds major user-facing media and theme improvements, plus new media ordering/record APIs, without intentionally breaking existing GhostHub installs or user data.

What's Changed

Full Changelog: v5.2.0...v5.3.0

GhostHub v5.2.0

Choose a tag to compare

@BleedingXiko BleedingXiko released this 16 May 19:10

What's New

USB User Data Backup

Admin Settings now includes a USB backup tool for exporting and importing GhostHub user data. Backups are saved to a GhostHubBackups folder on a selected USB drive and can be restored on the same or another GhostHub device.

You can now:

  • Export profiles, watch progress, hidden content, categories, drive labels, app config, and Wi-Fi settings
  • Import a GhostHub backup zip from USB
  • Review backup version and schema details before importing
  • Track export/import progress in the settings modal
  • Delete the backup zip after a successful import

Fixes

  • GhostHub backup folders are now ignored by media discovery and folder browsing.
  • Uploads now coordinate better with Streaming refreshes to reduce reload churn while files are still uploading.
  • Fixed the theme selector so the current theme is selected correctly when opening preferences.
  • Fresh installs now explicitly require a reboot so system services finish applying cleanly.

Docs

  • Updated ready-to-flash image notes for arm64 and armhf image variants.
  • Clarified that prebuilt images ship with SSH disabled.

Version

This is a minor release because it adds a new user-facing USB backup and restore workflow.

Full Changelog: v5.1.0...v5.2.0

GhostHub v5.1.0

Choose a tag to compare

@BleedingXiko BleedingXiko released this 11 May 21:36

What's New

Staged Multi-Target Uploads

File Manager uploads now support staging files into multiple destination folders before starting the upload. This makes it possible to queue files for different folders in one flow instead of uploading one folder at a time.

You can now:

  • Select multiple files
  • Choose a destination folder with the existing searchable folder picker
  • Stage batches into different folders
  • Review grouped upload targets
  • Start all staged uploads together

Fixes

  • Fixed the minimized upload status indicator so it opens a focused upload status view instead of a broken File Manager modal state.
  • Fixed the staged upload footer button so the icon and label stay inside the button.
  • Fixed Streaming layout rows getting stuck in the loading shimmer after revealing and hiding hidden content.

Docs

  • Removed stale hardcoded app release versions from public install docs.
  • README now uses a dynamic v* app release badge.

Version

This is a minor release because it adds a new user-facing upload workflow.

Full Changelog: v5.0.2...v5.1.0

GhostHub 5.0.2

Choose a tag to compare

@BleedingXiko BleedingXiko released this 03 May 18:42

Fixes:
Category filter pill respects renamed USB labels — stepping back through auto:: categories via the pill no longer falls back to the raw filesystem leaf (e.g. Sda2); it now resolves the user-defined drive label (My Movies) from a persistent id→name cache that survives filter changes.

Streaming layout no longer double-flickers on filter step-back — clicking a category then clicking the "all" pill caused rows and cards to rebuild twice. The post-fetch sync now shallow-diffs against the rows component and only patches what actually changed; individual category rows refresh in place as their media lands instead of being torn down globally.

Full Changelog: v5.0.1...v5.0.2

GhostHub 5.0.1: The Pi 4 Release

Choose a tag to compare

@BleedingXiko BleedingXiko released this 26 Apr 00:58

This is the biggest GhostHub release yet.

GhostHub has moved from a private Pi appliance project into a public AGPL-3.0 open-source source tree. This release is not just a feature update. It is the first real public foundation for building, installing, updating, modifying, and contributing to GhostHub from source.


GhostHub Is Now Open Source

GhostHub is now released under the AGPL-3.0 License.

That means the current source tree is public, auditable, hackable, and ready for community contributions. Older public GhostHub releases may remain available under MIT, but the active project going forward is AGPL-3.0.


New Public Install Flow

GhostHub now has a proper GitHub Releases based install and update path.

  • Fresh installs download release assets directly from GitHub.
  • Admin updates check the latest GitHub Release tag.
  • Update installs preserve local app state, settings, virtualenv, Headscale, and Cloudflared data.
  • Local development deploys can still build from source and push directly to a Pi.

The public release assets are:

  • Ghosthub_pi_github.zip
  • install_ghosthub.sh

Raspberry Pi 4 Setup Is Now Documented

The setup docs have been rebuilt around the real supported target:

  • Raspberry Pi 4
  • Raspberry Pi OS Lite Bullseye, 2022-01-28-raspios-bullseye-armhf-lite
  • Python 3.9
  • Pi Imager advanced settings
  • SSH setup
  • Fresh install
  • Local source deploy
  • Image prep workflow

The goal is simple: flash the right Pi OS image, clone the repo, run one deploy script, and get GhostHub running.


New Public Docs

The repo now has a proper public-facing documentation set:

  • New README
  • Quick Start guide
  • DIY install guide
  • Flashable image guide
  • Release guide
  • Contributing guide
  • Security policy
  • Architecture docs
  • Raspberry Pi operations docs

The README has also been rebuilt as the front door for the project instead of just a developer note.


Cleaner Open-Source Source Tree

This release removes private commercial/provisioning pieces and cleans up the project for public development.

Removed or replaced:

  • Private OTA/update server flow
  • Device provisioning requirements
  • Hardware serial locking
  • Proprietary licensing docs
  • Cloudflare R2 release helpers
  • Old submodule references
  • Private copy artifacts and agent-local files

RAGOT is now documented as a vendored frontend runtime at:

static/js/libs/ragot.esm.min.js


Developer Workflow Improvements

The development flow is now easier to understand and reproduce:

  • Python 3.9 virtualenv setup is documented.
  • Release workflow uses Python 3.9.
  • Local deploy scripts bootstrap the dev environment before building.
  • Tests and release packaging are documented for contributors.
  • The Pi deploy flow has Standard, Update, and Image Prep modes.

UI Polish

A few user-facing issues were cleaned up along the way:

  • Profile selection now fully owns the screen and hides chat while active.
  • New profile creation no longer auto-opens unless the user clicks Add Profile.
  • Public docs now include screenshots for a stronger first impression.

For Existing Users

If you are already running GhostHub, this release changes where updates come from. Updates now use GitHub Releases instead of the old private update path.

For a clean validation path, install this release first, then update to the next tagged release through the admin UI.


GhostHub is now public, self-hosted, Pi-first, and ready for people to actually build on.

Ghosthub 5.x base IMG

Choose a tag to compare

@BleedingXiko BleedingXiko released this 26 Apr 00:51

Optional ready-to-flash GhostHub image for Raspberry Pi 4.

Built from Raspberry Pi OS Lite Bullseye 2022-01-28-raspios-bullseye-armhf-lite with GhostHub preinstalled.

Download the ZIP, extract the .img, then flash it with Raspberry Pi Imager using Use custom.

After boot, open:

http://ghosthub.local:5000

If that does not resolve, use the Pi's IP address:

http://<pi-ip-address>:5000

This image is for fresh installs only. Normal GhostHub app updates use the regular vX.Y.Z releases with Ghosthub_pi_github.zip and install_ghosthub.sh.

GhostHub B5 Images

B5 is available in two ready-to-flash Raspberry Pi 4 images:

  • GhostHub-B5-arm64.zip - recommended for most users
  • GhostHub-B5-armhf.zip - 32-bit image; same GhostHub behavior, lower power use

Both images run the same GhostHub app build and have the same first-boot behavior.

Security note: SSH is disabled on prebuilt images. If you need SSH during setup, use the DIY install path and enable SSH in Raspberry Pi Imager.

GhostHub 1.6 — UX polish & Index saving

Choose a tag to compare

@BleedingXiko BleedingXiko released this 17 May 20:39
c66b35c

This is the most loaded GhostHub drop so far: smarter sessions, a new command, buttery-smooth UI, Pinggy integration, and a ton of polish under the hood.


⚡ Smarter Sessions & Index Progress

  • Saved progress: GhostHub now remembers your last spot per category even with shuffle enabled. Jump back right where you left off, no matter how you browse.

🌐 Pinggy Tunnel Support

  • Full integration with Pinggy for instant tunnel sharing.
  • New UI for choosing tunnel providers, access tokens, and live URL/status display.

🗂️ Category & Media Upgrades

  • Category thumbnails now generate and load reliably (even in Docker!).

💬 Chat & Command Overhaul

  • Cleaner, touch-friendly chat—no more expand bugs, smoother timestamp alignment, better auto-select.
  • Slash command popup: Type / to see every command instantly, with live filtering.
  • New /random command to jump to random media.
  • New /kick {session id} command to kick that user
  • Smarter command input: handles typos, invalids, and doubles.

🖥️ UI / UX Polish

  • Refined modal behavior and mobile chat handling.
  • Send button restyle, popups smoothed, and overall navigation faster.
  • Real-time category switching and sync are more responsive.

🐛 Bugfixes

  • Docker environment thumbnail generation fixed
  • Config modal, auto-select, chat notification, drag conflict, and touch issues all squashed
  • .gitignore and internal cleanup for a tidier repo

GhostHub 1.6 is faster, friendlier, and rock-solid.

Pinggy Tunnel Support Smarter Sessions Slash Command Popup

No setup. No accounts. All vibes. 👻

GhostHub v1.5 — Admin Mode, Sync Lock, and Live Users

Choose a tag to compare

@BleedingXiko BleedingXiko released this 10 May 16:29
984f546

This update gives GhostHub its sharpest upgrade yet — real-time session control, user visibility, and secure sync.


🔒 Admin Lock & Permissions

  • First person to click the lock icon becomes admin
  • Admin-only access to tunnel, config, and category deletion
  • Everyone else sees a simplified UI

🔐 Password-Protected Sync

  • Sync sessions now require a password (if set)
  • Keeps randoms from hijacking your view

👥 Live User Awareness

  • Real-time connected user count per category
  • Join notifications show up in chat

📱 UX Improvements

  • Swipe left on mobile to go back
  • /myview — share your exact position
  • /view {session-id} — jump to someone else’s shared view
  • ARM64 Docker support (Raspberry Pi ready)

GhostHub is now leaner, safer, and built for real sessions.
No setup. No accounts. Just vibes. 👻

Full Changelog: 1.4...1.5

GhostHub v1.4 — Session Passwords & Config/Tunnel UI

Choose a tag to compare

@BleedingXiko BleedingXiko released this 08 May 18:02
1b373f8

What's Changed

  • Session password set via the new config UI

  • Scroll wheel media navigation

  • Config and Tunnel UI by @BleedingXiko in #24

  • Obfuscate filenames and paths in local logs by @BleedingXiko in #25

Note: Sync mode is not password protected yet, this is planned in an upcoming release

Full Changelog: 1.3...1.4

GhostHub v1.3 — Gunicorn Ready + Bandwidth Optimizations

Choose a tag to compare

@BleedingXiko BleedingXiko released this 06 May 17:20
7a6d78a

Release Highlights:

  • Tap-to-Play Thumbnails: New thumbnail previews let users tap to load videos on demand — a major bandwidth saver and smoother UX.

  • Pinggy Integration: Share your media server anywhere using your own Pinggy token — now works out-of-the-box in both standalone and Docker deployments.

  • Docker Production Support: Upgraded server now runs via Gunicorn + Gevent, enabling stable multi-client support and future scaling.

  • Smarter Tunnel Setup: Environment-based tunneling (Cloudflare or Pinggy) now integrated seamlessly in both normal and Docker modes.

Full Changelog: 1.2...1.3