Skip to content

Releases: Alchemist-Aloha/xflow

v0.4.0

Choose a tag to compare

@Alchemist-Aloha Alchemist-Aloha released this 26 Apr 03:10

XFlow — Update v0.4.0

Summary

Version 0.4.0 focuses on stability, performance, and extensibility: we improved background playback and sync reliability, optimized media caching and startup time, and shipped a set of UX improvements across feed and settings screens.

Highlights

  • Background Playback & Low-Latency Start: Improvements to audio/video warm-up and prefetch reduce perceived startup latency for media playback.
  • Offline-First Sync & Conflict Resolver: Database sync was made more robust with deterministic conflict resolution and reduced duplicate content on resume.
  • Media Cache Optimizations: Faster pruning and new cache metrics; cache pruning is now incremental and configurable from settings.
  • UI/UX Polishes: Updated timeline headers, subscription sorting, and accessibility improvements on the settings and discovery screens.
  • Build & Platform: Web build size improvements and Android packaging fixes to reduce cold-start time.

Changelog (selected changes)

  • feat: implement incremental media cache pruning and metrics
  • fix: reduce startup latency by eager media prefetch and decoder warm-up
  • feat: add deterministic conflict resolver for sync operations
  • perf: optimize DB indices for timeline queries
  • chore: improve web build pipeline and Android packaging
  • feat: accessibility: improve contrast and screen-reader labels in settings

Notable files changed / new

  • lib/core/plugin/ — new plugin host and registration API
  • lib/features/media/mixer_plugin.dart — plugin interface for media mixers
  • lib/core/cache/media_cache_manager.dart — incremental pruning and metrics
  • lib/core/sync/conflict_resolver.dart — deterministic conflict resolution
  • lib/features/settings/query_settings_screen.dart — exposure of new cache and sync toggles
  • web/ and android/ build tweaks in respective build configs

Migration notes

  • If you rely on the older media mixer implementation, update your code to register via the new plugin API (lib/core/plugin/). See plugin host docs for lifecycle and priority rules.
  • New cache pruning defaults are conservative; if you previously relied on aggressive pruning, adjust values in Settings → Storage.

Full Changelog: v0.3.0...v0.4.0

v0.3.0

Choose a tag to compare

@Alchemist-Aloha Alchemist-Aloha released this 25 Apr 03:49

XFlow — Update v0.3.0

Summary

This release introduces the Discovery Engine, a powerful new system for feed generation, along with significant overhauls to the settings architecture, media caching, and Twitter authentication. Version 0.3.0 focuses on giving users more control over their feed algorithm and improving the overall stability of data synchronization.

Highlights

  • Discovery Engine: A new core engine (lib/core/client/discovery_engine.dart) that manages feed generation with user-controllable parameters, including media saturation logic to avoid consecutive user repeats, unseen content boosts, and multi-pass logic for diverse content discovery.
  • Feed Strategies: Support for multiple timeline fetching strategies including Video Mixer (algorithmic), Chronological, and specialized Discovery modes.
  • Settings Overhaul: Completely redesigned Settings page with a new QuerySettingsScreen. Users can now fine-tune batch sizes, sync intervals, and discovery parameters via interactive sliders and toggles.
  • Media Cache Management: Implementation of a rolling media cache with SQLite tracking (cached_media table). Added cache statistics and a "Clear Cache" functionality in the settings for better storage management.
  • Background Sync: Added background synchronization for metadata and automated startup pruning to keep the local database healthy and performant.
  • Authentication & Core: Added account provider support for Twitter authentication and enhanced the TwitterClient with improved timeout handling and flexible fetching parameters.

Changelog (selected commits)

  • b682f8c — feat: add color resources and account provider for Twitter authentication
  • ad8ba89 — overhaul settings page, sort subscriptions, and new icons
  • d3c6ef2 — feat: add timeline batch size setting and update fetch logic in FeedNotifier
  • 1b88fe8 — feat: add support for video mixer, algorithmic, and chronological feeds
  • 7f561e1 — feat: add Debug Timeline screen for testing official Twitter API fetch
  • 21d531c — feat: enhance Tweet model and Repository for media_key support and database deduplication
  • 4fdc3e1 — feat: enhance DiscoveryEngine with media saturation and multi-pass logic
  • ad958d2 — feat: implement Feed Discovery Engine with user-controllable parameters
  • a2ad980 — feat: add cached_media table and pruning logic to SQLite
  • d50a8c2 — feat: implement background sync for metadata and startup pruning

Full Changelog: v0.2.1...v0.3.0

v0.2.1

Choose a tag to compare

@Alchemist-Aloha Alchemist-Aloha released this 23 Apr 19:56

Full Changelog: v0.2.0...v0.2.1

Full Changelog: v0.2.0...v0.2.1

v0.2.0

Choose a tag to compare

@Alchemist-Aloha Alchemist-Aloha released this 23 Apr 18:47

XFlow — Update v0.2.0

Summary

This release marks the project version 0.2.0 and bundles several player, feed, caching, and profile improvements focused on rendering reliability, media prefetching, and developer tooling.

Highlights

  • Rendering & player: Improved video rendering (wrapped TiktokMediaContainer in RepaintBoundary) and stabilized the player pool and prefetch logic (lib/features/player/, lib/features/feed/).
  • Feed & parsing: Added timeline fetching helpers and improved tweet/date parsing to support more robust feed display and overlays.
  • Caching & performance: Aggressive media and response caching using ffcache, cached_network_image, and local caching strategies to reduce buffering and network usage.
  • Profile & subscriptions: Enhanced profile media display, feature flags for profile label improvements, subscription import and management screens.
  • Developer & CI: Added AppLogger and LogViewerScreen for diagnostics and a GitHub Actions workflow for automated APK builds.

Changelog (selected commits)

  • c3ef2d5 — feat: wrap TiktokMediaContainer in RepaintBoundary for improved rendering
  • a82febe — feat: add high-resolution avatar URL support for tweets and profiles
  • e8bbeae — feat: add fetchUserTimelineByScreenName method and enhance tweet prefetching logic
  • 272d4eb — feat: implement caching in fetch method and enhance feed with media warmup
  • 15209d4 — feat: add player pool and prefetch logic
  • c835425 — feat: implement AppLogger and LogViewerScreen for diagnostics
  • ba23ebc — feat: add GitHub Actions workflow for building and releasing APKs
  • cd6f7ab — feat: update project version to 0.2.0 and add release notes

Full recent history is available in the git log for the repository if you want an exhaustive list.

Notable files referenced

  • pubspec.yaml — version bump and dependency list
  • lib/features/player/ — player pool and rendering components
  • lib/features/feed/ — TikTok-style feed, warmup/prefetch logic
  • lib/core/client/twitter_client.dart — Twitter/X client flags and fetch logic
  • squawker_source/ — upstream auth/data-layer reference

Full Changelog: v0.1.0...v0.2.0

Full Changelog: v0.1.0...v0.2.0

v0.1.0

Choose a tag to compare

@Alchemist-Aloha Alchemist-Aloha released this 23 Apr 02:28

XFlow - Initial Release

XFlow is a Flutter-based application that reimagines how you consume media from Twitter/X. It provides a seamless, TikTok-style infinite scrolling experience specifically tailored for browsing videos, images, and GIFs from the platform.

By leveraging the robust authentication and data layers originally built for the Squawker project, XFlow allows you to securely log in, view media from your subscriptions, and explore trending content in a highly optimized, full-screen player environment.

✨ Features

  • TikTok-Style Media Feed: Infinite vertical scrolling through full-screen media content.
  • Smart Pre-caching: Automatically warms up the next few videos in your feed so playback starts instantly without buffering.
  • Subscription Management: Easily manage your X/Twitter subscriptions and view a dedicated feed of their media.
  • Profile & Media Grid: View user profiles and lazily-loaded grids of their media uploads.
  • Optimized Caching: Implements ffcache and cached_network_image to aggressively cache API responses and media assets, dramatically reducing network requests and improving load times.
  • State Preservation: Keeps your place in the infinite scroll feed even when navigating deep into user profiles or switching tabs.

Full Changelog: https://github.com/Alchemist-Aloha/xflow/commits/v0.1.0

Full Changelog: https://github.com/Alchemist-Aloha/xflow/commits/v0.1.0