Cyclauncher

dev.msbs.cyclauncher
by Zapstore _@zapstore.dev

Ergonomic one-handed launcher with side alphabet grid, tags & widgets

Republished from GitHub / F-Droid by the Zapstore main account.

Cyclauncher is a fast, ergonomic Android launcher built entirely with Jetpack Compose, designed from the ground up for comfortable one-handed navigation and instant app access. Key Features: - Ergonomic One-Handed Control: Complete layout mirroring for Left-Handed and Right-Handed use, keeping all apps and controls within natural thumb reach. - Multi-Modal App Search: Rapid app retrieval through an ergonomic Side Alphabet Grid, an alternative rectangular alphabet wheel with inertia physics, chromatic icon color filtering, and instant text search. - Interactive Tag Folders: Group applications with 2x2 live icon previews, proximity-aware popup menus, 2D drag-to-reorder on grid and within folders, and home screen favorite pinning. - Highlights Hub & Widgets: Dedicated second screen featuring customizable Android widgets in compact accordions (search, resize, reconfigure), daily update tracking, and an untagged apps drawer. - Private Space & Work Profiles: Built-in support for multi-profile environments (Personal, Work, Private Space) with biometric lock/unlock and isolated app caching. - Character & Symbol Mapping: Customize search buckets by binding emojis, Cyrillic, Arabic, and international alphabets directly to A-Z and #. - Adaptive Theming & Hue Angle Shift: Dynamic wallpaper theming powered by an adaptive Hue Angle Shift algorithm, Echo Icon Theme presets, custom HSV picker, and drop-shadow tuning. - Privacy-First & Battery-Efficient: 100% Jetpack Compose with zero telemetry, no background network calls, and an accessibility toggle to disable all animations.

First release: Aug 12, 2026, 16 total releases.

Most recent release: Nov 1, 2026.

Repo

Appears in 0 app stacks.

0 sats / 0 zaps received in the past year.

Sats Received

Underlying data available via MCP: app_zaps, app_releases.

Zap Count

Underlying data available via MCP: app_zaps, app_releases.

Releases

  • Nov 1, 2026 1.0.0
    ## Overview Cyclauncher v1.0.0 (Build 28) marks the transition from release candidates to the first official stable release. This milestone introduces comprehensive multi-language localization (expanding coverage to 7 languages), robust backup and restore for all launcher configurations and widgets, multi-profile lifecycle isolation, rendering performance optimizations, and ergonomic UI polish. ## Key Changes Since v1.0.0-rc.5 ### Internationalization and Localization * Added native translations and Fastlane store metadata for Simplified Chinese (`values-zh`, `zh-CN`), Spanish (`values-es`, `es-ES`), German (`values-de`, `de-DE`), Hindi (`values-hi`, `hi-IN`), and Japanese (`values-ja`, `ja-JP`). * Structured language selection in Settings to display the English name as the primary title and native script as the secondary subtitle to prevent redundant text. * Localized emoji placeholders in tag creation and editing dialogs.
    More…
    * Standardized Title Case capitalization across settings menu options for all language locales. ### Backup and Restore * Expanded dynamic backup export and import to encompass all user preferences, highlight screen section orders, search widget layouts, and language configurations. * Added custom character mappings to backup archives with automatic search index rebuilds upon import. * Implemented live configuration reloading in `LauncherViewModel.reloadSettings()` covering highlight sections, widgets, search layout alignment, and icon packs. * Added settings and character mapping counter badges to `TagsBackupConfirmDialog`. ### Multi-Profile and Stability Hardening * Isolated package removal broadcast processing across user profiles (Personal, Work, Private Space) using user handle hash qualifiers. * Resolved user handles directly from component keys to prevent launch failures for secondary and work profile applications. * Offloaded preference writes to `storageExecutor` to synchronize state access and eliminate potential disk IO contention on the main thread. * Hardened `IconPackManager` with volatile resource references and atomic cleanup routines to prevent race conditions during pack unloading. ### Performance and Rendering Optimizations * Eliminated idle animation overhead in tag folder popups when closed or unrendered. * Deduplicated tag state flows in `LauncherViewModel` to reduce redundant Compose recomposition cycles. * Cached snake indicator vector paths during scrubbing in `SideAlphabetSearchLayout`. * Optimized concurrent cache access in `AppColorManager`. ### UI and Ergonomics Polish * Synchronized search history flow updates dynamically across home and search views. * Improved left-handed and right-handed layout alignment across the rectangular alphabet wheel, tag components, and main menu. * Enforced animation preference checks to suppress dropdown menu transitions and tab animations when system animations are disabled. * Integrated `TouchMarqueeText` into tag dialog tabs to handle extended tag titles without clipping. * Unified inactive visibility-off icon tinting to a consistent muted gray for hidden status bar and search widget controls.
  • Oct 21, 2026 1.0.0-rc.5
    **Full Changelog**: https://github.com/msbluesnow/Cyclauncher/compare/v1.0.0-rc.4...v1.0.0-rc.5
  • Oct 13, 2026 1.0.0-rc.4
    ## Overview Cyclauncher v1.0.0 Release Candidate 4 (RC4, Build 26) introduces main screen area visibility controls, a formalized Feature Freeze phase leading up to the final v1.0.0 Stable milestone, deep UI/dialog styling unification, and extensive background thread/Binder IPC performance optimizations. ## Feature Freeze Notice With the release of RC4, Cyclauncher enters an official **Feature Freeze** stage ahead of the v1.0.0 stable release: * All functional features and architectural expansions are frozen. * Pull requests proposing new capabilities are paused until post-v1.0.0. * Contributions and pull requests during this phase are strictly focused on critical bug fixes, crash resolutions, memory/rendering stability, localization updates, and documentation.
    More…
    ## Key Changes ### Main Screen Customization & Minimalist Controls * Added settings to independently hide the popular tags grid and recent app history section from the main screen. * Implemented adaptive full-height layout redistribution: when one area is disabled, the active section expands to occupy the available vertical space. * Unified area controls into a consolidated "Main screen" capsule dropdown with clear crossed-out status indicators. * Retained search screen history and background recents tracking independently of main screen visibility states. ### Performance & IPC Optimization * Offloaded launch history and recent app disk serialization routines from the UI thread to background dispatchers. * Throttled concurrent Binder IPC calls during icon color indexing to eliminate inter-process contention. * Prevented redundant icon cache invalidations during activity configuration changes. * Debounced package update events to eliminate reload thrashing during batch application updates. * Isolated todayActivity PackageManager queries from secondary user profile state changes. * Prevented redundant app reload cancellations and IPC storms during lifecycle resume transitions. * Moved legacy cache directory cleanup routines entirely to background threads. * Eliminated synchronous WallpaperManager IPC queries from the main UI thread. * Optimized alphabet wheel draw loop rendering and marked core data models with @Immutable. ### UI & Styling Refinement * Unified dialog styling, eliminated grey Material 3 elevation tints, and dynamically bound pop-up opacity to custom dialogs. * Tightened side alphabet grid spacing and enlarged letter tile touch targets. * Resolved letter unselection timing by clearing active index on touch release instead of touch down. * Integrated IconEpochManager tokens into AppIconKey for instant Coil cache invalidation upon icon pack updates. * Ensured status bar visibility is properly refreshed following keyguard unlock transitions. ### Community & Contributors * Thanks to @alanpoulain for contributing Pull Request #7 (options to hide tags and history areas on the main screen with adaptive layout redistribution). ## Verification & Integrity * Signed with APK Signature Schemes v2 and v3. * Built in a reproducible environment with OpenJDK 17 and Gradle configuration caching.
  • Oct 10, 2026 1.0.0-rc.3
    ## Overview Cyclauncher v1.0.0 Release Candidate 3 (RC3, Build 25) introduces comprehensive background and capsule contrast customization, pop-up transparency controls, high-DPI icon rendering optimizations, interactive onboarding gestures, and hardened settings backup restoration. ## Key Changes ### Theme & Contrast Customization * Added independent opacity sliders and black/white toggles for wallpaper scrim dimming, capsule background contrast, and pop-up menus. * Set default pop-up opacity to 81% (19% transparency) with composition-local propagation across dialogs and palette overlays. * Introduced edge-to-edge split black/white toggles fused beneath active contrast tabs with repeat-click toggling.
    More…
    * Enclosed the collapsible theme contrast section within a dedicated rounded capsule container. * Redesigned primary text and button color selectors into compact 26 dp capsules with accent-colored borders. * Added accent-colored outer borders to the 3-segment contrast summary indicator. ### Search & Gesture Navigation * Added Quick Palette tap overlay for rapid chromatic search mode switching. * Introduced a responsive multi-step onboarding tutorial demonstrating launcher gesture interactions. * Mirrored highlight widget sections and text search cursor alignment when operating in right-hand mode. * Streamlined the side slot trigger button to show the active mode icon and dropdown arrow. ### Performance & Icon Clarity * Resolved icon pixelation on high-DPI displays by optimizing bitmap scaling and Coil caching. * Reduced redundant allocations during icon mask clipping. ### Backup & Persistence * Expanded JSON backup schema to include background dimming, capsule contrast, pop-up transparency, and side slot preferences. * Enforced strict Float type preservation during settings backup restore, preventing type mismatches in SharedPreferences. ### Community & Contributors * Special thanks to @alanpoulain for contributing Pull Request #6 (adaptive background scrim and capsule contrast foundation). ## Verification & Integrity * Signed with APK Signature Schemes v2 and v3. * Built in a reproducible environment with OpenJDK 17 and Gradle configuration caching.
  • Oct 8, 2026 1.0.0-rc.2
    ## Release Overview Cyclauncher v1.0.0 RC 2 (Build 24) is the second Release Candidate for version 1.0.0. This release resolves resume freezes when exiting applications back to the default launcher, fully enables Coil 3 memory caching for application icons, introduces complete bilingual localization support (English and Russian) with an in-app language picker, and adds user-configurable marquee text scrolling. ## Key Changes ### Performance and Lifecycle Optimization - Integrated a custom AppIconKeyer for Coil 3 to properly generate and manage in-memory cache keys for installed applications. - Corrected the Coil data source flag to DataSource.DISK, enabling the 24 MB MemoryCache to reliably store and serve pre-rasterized application icon bitmaps in 0 ms. - Implemented a fast-path direct PackageManager.getActivityIcon lookup for primary user profiles, bypassing expensive LauncherApps.getActivityList Binder IPC calls and eliminating system server thread contention.
    More…
    - Replaced synchronous UserManager and LauncherApps Binder transactions on the main thread in onResume with asynchronous background coroutines (checkProfileStateAsync), preventing UI stalls when returning from external applications. - Added cached pre-scaled icon shape mask paths in IconShapeHelper, eliminating redundant allocations and matrix transformations during icon drawing. - Removed duplicate default launcher status checks on activity new intents. ### Internationalization and Localization - Implemented comprehensive bilingual localization support covering English and Russian across all screens, menus, dialogs, and settings. - Added an in-app language selector allowing users to switch languages dynamically without altering global system settings. - Wrapped base contexts to ensure consistent locale application across configurations and configuration changes. ### UI and Usability Enhancements - Added a dedicated marquee toggle setting with tap-to-restart text animation support. - Streamlined settings screen layout and improved section groupings.
  • Oct 4, 2026 1.0.0-rc.1
    ## Release Overview Cyclauncher v1.0.0 RC 1 (Build 23) represents the first Release Candidate for version 1.0.0. This milestone introduces multi-profile workspace support (including Private Space and Work Profiles), a redesigned compact accordion structure for the Highlights panel with section reordering, back navigation polish for non-default launcher environments, and refreshed Fastlane and F-Droid metadata. ## Key Changes ### Multi-Profile Support and Private Space - Added dedicated Private Space and Work Profile sections to the Highlights panel. - Implemented biometric and credential authentication triggers for locking and unlocking Private Space. - Integrated isolated in-memory icon caching and direct app installer shortcuts for secondary user profiles.
    More…
    - Added cold-start retry mechanisms for secondary user profiles to prevent aborted activity launches. ### Highlights Screen and Widgets - Redesigned Highlights section tiles into collapsible compact accordions. - Added section reordering dropdown allowing full customization of tile order on the Highlights screen. - Integrated a dedicated Untagged Apps section drawer to streamline app organization. ### Navigation and Lifecycle Fixes - Configured back gesture and button dispatching to minimize the task (`moveTaskToBack`) when Cyclauncher is running as a non-default launcher, preventing navigation trapping. - Optimized window insets controller behavior to retain standard edge gesture pass-through when the status bar is visible. - Persisted default launcher status synchronously in SharedPreferences for immediate cold-start availability. ### Documentation and Metadata - Updated Fastlane store metadata and F-Droid descriptions prioritizing the default Side Alphabet Grid. - Corrected adaptive dynamic theming references to the proprietary Hue Angle Shift algorithm. - Updated project documentation and website references for Release Candidate 1.
  • Sep 26, 2026 v1.0.0-beta.3
    Cyclauncher v1.0.0 Beta 3 introduces gesture responsiveness refinements, high-DPI system adaptive icon rendering, and general performance optimizations. ### Key Changes - Upgraded project dependencies, Kotlin 2.4, and Compose BOM. - Added adaptive icon shape mask rendering and high-DPI LauncherApps density resolution. - Fixed swipe-down actions overlay border overlap and seam alignment. - Resolved top wheel drag gesture initialization on initial screen entry. - Fixed AppInfo search copy bug, lifecycle leaks, and widget preview jank. - Optimized tag sorting and cached icon shape path rendering. - Fixed dynamic wallpaper accent color resolution during backup restoration and settings reload.
    More…
    ### Installation Download `Cyclauncher-22.apk` attached below or install via F-Droid. **Full Changelog**: https://github.com/msbluesnow/Cyclauncher/compare/v1.0.0-beta.2...v1.0.0-beta.3
  • Sep 17, 2026 v1.0.0-beta.2
    ## What's New The second Beta release of Cyclauncher focuses on tag folder visual customization, favorites management limits, improved drag-and-drop reordering physics, and stability improvements during screen unlock transitions. ## New Features - **Tag Folder Monochrome Theme**: Configurable grayscale effect for tag folder borders, folder icons, and internal app preview icons, accessible via a dropdown area selector in Settings. - **Favorites Limit & Dead Key Pruning**: Enforced a 13-item limit on pinned favorites to preserve clean UI layouts, with automatic pruning of uninstalled apps and orphaned tag keys. - **Highlights Recent Apps Action Menu & Tag Badge**: Added long-press context menu support to recent app chips in Highlights, along with a tag indicator icon for apps assigned to tag folders. - **KeepAndroidOpen Countdown Visibility Toggle**: Added an eye icon button in the banner to toggle between showing and hiding the remaining days counter.
    More…
    ## Improvements & Fixes - **Drag-and-Drop Reordering**: Introduced 35% hysteresis and 2D matrix coordinate offset compensation, eliminating top element freezing and smoothing icon swaps. - **Unified Launch Tracking**: Standardized launch tracking across Main Screen, Search Screen, and Widgets, with isolated search screen history clearing that preserves recently updated apps. - **Unlock Transition & Lifecycle Fix**: Asynchronous status bar visibility updates prevent UI freezes and status bar flicker when unlocking the device or resuming the launcher. - **Expanded Backup & Restore**: JSON backup now includes launcher settings, custom tag app ordering, monochrome preferences, and KeepAndroidOpen display state. - **Memory & State Optimization**: Migrated gesture coordinate states to primitive state holders to avoid unnecessary object boxing and recomposition overhead. - **Store Compliance**: Removed unnecessary BIND_APPWIDGET permission from manifest in favor of runtime framework binding.
  • Sep 14, 2026 v1.0.0-beta.1
    ## What's New This release marks the transition of Cyclauncher from Alpha to Beta. The core feature set is now stable and complete. This version introduces several ergonomic refinements, new visual controls, and interaction improvements across the launcher. ## New Features - **Monochrome History Icons**: Added a toggle in Settings to display history app icons in grayscale. Useful for visual clarity and reduced distraction in the history panel. - **Haptic Feedback Setting**: Added a configurable haptic feedback toggle for touch interactions throughout the launcher. - **Marquee Text Support**: Long app labels in search and history now scroll via marquee animation instead of being truncated. - **Swipe-Down Quick Actions Overlay**: A new gesture overlay triggered by swiping down from the top of the main screen, providing configurable quick action shortcuts.
    More…
    - **Hand-Sided Persistent Scrollbar in Folders**: Folder contents now display a persistent scrollbar that adapts to the configured hand orientation (left/right), improving one-handed accessibility. - **Icon Color Filtering**: Search results can now be filtered by icon color using the aerodesign palette displayed above the alphabet grid. - **Edit Tag, Reorder, and Hold-to-Delete in Folder Menu**: Extended tag folder context menus with inline rename, drag reorder support, and a hold-to-activate delete action. ## Bug Fixes - Fixed gesture detector not restarting correctly after closing an action menu, which caused missed touch events in subsequent interactions. - Fixed the side alphabet grid touch bounds calculation, resolving cases where taps near the edges were not registered correctly. ## Performance & Stability - Optimized state management and UI recomposition across multiple screens, reducing unnecessary redraws. - Modularized the Settings screen into distinct composable sections for improved maintainability and load performance. - Deduplicated shared UI components and unified spacing constants across the codebase.
  • Sep 11, 2026 v0.12.0-alpha
  • Sep 9, 2026 v0.11.0-alpha
  • Sep 3, 2026 v0.10.0-alpha
  • Aug 27, 2026 v0.8.2-alpha
  • Aug 26, 2026 v0.8.0-alpha
  • Aug 21, 2026 v0.7.1-alpha
  • Aug 12, 2026 0.6.2 Alpha