30 open-source projects similar to google/accompanist, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Accompanist alternative.
Accompanist is a Jetpack Compose extension library providing a set of utility components and libraries that fill functional gaps in the declarative UI framework. The project provides an adaptive layout toolkit for building user interfaces that automatically adjust based on Android screen size and device configuration. It includes a renderer for converting standard Android Drawable assets into formats compatible with a declarative painting system, as well as a manager for requesting and tracking Android system permissions.
iOS9AdaptationTips is a collection of technical strategies and guides for adapting mobile applications to the iOS 9 operating system. It serves as a development resource for implementing system integration, UI layout adaptations, and push notification configurations. The project provides specific guidance on flexible interface implementation, including support for split-screen modes, dynamic text scaling, and status bar configurations. It also covers the use of secure certificates and heartbeat signals to maintain persistent connection stability for push notifications. The material covers br
This project provides a collection of instructional guides and tutorials for Android app development, native mobile application creation, and computer science education. It focuses on building native applications through step-by-step implementation, covering the development of user interfaces and the integration of system hardware and permissions. The material extends into broader technical domains, including the study of fundamental data structures and algorithms for technical interview preparation. It also covers cybersecurity fundamentals, such as identifying web vulnerabilities and implem
Dexter is a Java library and wrapper for managing runtime system permissions on Android. It simplifies the process of requesting permissions from users by reducing the boilerplate code required in activities and fragments, providing a callback system to handle granted and denied states. The library includes a handler for displaying rationale explanations to users when dangerous permissions are denied or require further justification. It also provides automated response mechanisms, such as triggering user interface elements when a permission request is rejected. The project covers error detec
PermissionsDispatcher is a declarative permission management library for Android. It provides a framework for handling runtime and special permissions using an API that routes request results to specific handler methods. The library uses annotations to trigger designated methods for success, rationales, or denials. It coordinates both standard runtime permission flows and specialized permissions that require directing the user to system settings activities for manual approval. The system includes workflows for custom permission justifications and denial handling, including fallbacks for when
Easypermissions is a library and wrapper for managing Android runtime permissions. It serves as a tool for requesting access to protected system resources and handling the associated result workflows. The project provides mechanisms for triggering system-level permission requests and executing specific tasks after permissions are granted. It includes a guided dialog system to direct users to system settings when a permission has been permanently denied. The library covers permission management, user onboarding, and system settings integration. It handles permission request lifecycles through
TinyConstraints is a declarative UI layout engine and constraint-based positioning framework designed to simplify the definition of view constraints, spatial relationships, and element dimensions. It functions as an auto layout wrapper library that allows for the positioning of elements through relational anchors and priority-based sizing rules. The system enables adaptive interface design by supporting custom view stacking in horizontal or vertical sequences and the use of offsets for precise edge alignment and centering. It further supports dynamic interface animations by updating layout co
This is a bottom sheet component library for React Native that provides gesture-driven panels sliding up from the bottom of the screen. The library is built around configurable snap points, dynamic sizing, keyboard awareness, modal presentation, and synchronized scrolling, with native driver animation offloaded to the native thread for smooth performance. The library distinguishes itself through deep gesture and animation control, including custom gesture handler overrides, scroll-gesture synchronization, and dynamic snap point recalculation when content size or keyboard visibility changes. I
ImmersionBar is a set of control utilities for Android designed to manage immersive display modes, notch-aware layouts, virtual keyboard visibility, and system bar aesthetics. It provides a centralized way to maximize screen real estate by toggling full-screen displays and controlling the behavior of status and navigation bars. The library distinguishes itself through specialized adaptation for hardware cutouts and notches, calculating precise offsets and window insets to prevent user interface elements from being obscured. It also includes a dedicated handler for soft keyboard management, wh
This project is a comprehensive framework for iOS application development, centered on building mobile applications that feature custom user interface components, asynchronous task management, and local data persistence. It serves as a technical knowledge base for software engineering, providing tools to organize and publish architectural analyses and notes in Markdown format. The framework distinguishes itself through a robust document-based storage layer that utilizes BSON-formatted records to perform CRUD operations within a NoSQL document store. It provides extensive system integration ca
This project is a collection of responsive CSS Grid dashboard templates and a data visualization UI kit. It provides a set of HTML layouts designed for building analytics interfaces and monitoring views for KPIs and business metrics that adapt to different screen sizes. The toolkit is library-agnostic, allowing the connection of static HTML templates to any external data source or third-party charting library without requiring custom adapter code. It uses a template-driven approach to separate the visual structure of the dashboard from the underlying data. The capabilities cover the assembly
HyperUI is a dependency-free collection of responsive HTML layouts and pre-styled components designed for various web domains. It functions as a Tailwind CSS component library where users integrate standalone HTML snippets via a copy-paste distribution model to avoid package installation and framework overhead. The library features one-click markup copying from a pre-built component gallery. It includes specialized design systems, such as high-contrast neobrutalist styling with heavy borders, and visual tools for generating dark mode color palettes and harmonic typography scales. The compone
This is a custom Android UI component designed to automatically adjust font sizes so that text content fits within defined layout bounds. It functions as a text scaling tool that ensures strings remain visible and contained within specified width and height constraints. The component implements adaptive layout design by dynamically modifying text size based on available screen real estate. It utilizes a measure-based fit calculation and iterative scaling to prevent text from being clipped or wrapping unexpectedly across different device resolutions.
This project is a design system and configuration framework for creating responsive Home Assistant dashboards. It provides a CSS-based interface framework and theme system used to define the visual appearance and layout of home automation interfaces. The system distinguishes itself through a multi-view layout approach that adapts the interface for mobile devices and wall-mounted tablets across portrait and landscape orientations. It employs configuration-based UI definitions and custom CSS to implement advanced visual effects, such as state-triggered animations for icons and interactive overl
This repository is a comprehensive collection of reference implementations and sample libraries for the Universal Windows Platform. It provides practical examples of how to use Windows Runtime APIs to build cross-device applications, including detailed guidance on XAML-based declarative user interfaces and DirectX-integrated rendering. The project distinguishes itself by providing a wide array of hardware integration suites, covering low-level communication with USB, Serial, I2C, SPI, and GPIO peripherals. It includes specialized implementations for mixed reality holographic rendering, advanc
AndPermission is a unified API manager for coordinating runtime permissions, secure file sharing, and high-privilege system access on Android. It provides a lifecycle-aware wrapper for handling dangerous permissions and user consent callbacks through a centralized permissions manager. The project distinguishes itself by managing special permissions that require high-privilege access, such as notification monitoring, screen overlays, and the ability to install applications from unknown sources. It also includes a dedicated tool for secure file sharing that generates temporary read and write ac
FigmaToCode is a design-to-code converter and frontend code generator that transforms Figma design files into responsive source code. It functions as a multi-platform UI compiler, mapping visual design elements to structural constraints for web and mobile environments. The system supports multi-target syntax emission to produce code for HTML, Tailwind CSS, Flutter, and SwiftUI. It automates frontend styling by converting design system variables and visual effects into theme-consistent code across these different frameworks. The tool handles responsive UI implementation by translating design
flutter_screenutil is a responsive UI framework and adaptive layout tool for Flutter. It provides a system for scaling layout dimensions and fonts based on a reference design to ensure consistent proportions across different screen resolutions and devices. The toolkit functions as a screen metrics provider that retrieves real-time device properties, including screen width, height, pixel density, and safe area dimensions. It specifically handles layout adaptation during device orientation changes and split-screen mode updates. The framework covers adaptive typography management, layout dimens
Simpl is an HTML, CSS, and JavaScript example library that provides a collection of minimal functional demonstrations of core web technologies and native browser APIs. It serves as a reference implementation and pattern gallery for frontend development, offering practical examples of how to implement common web features. The project showcases a wide range of browser capabilities, including real-time web communication via WebSockets and WebRTC, responsive web design techniques for adaptive layouts, and the implementation of offline workflows using service workers. It also provides demonstratio
AndroidX is the official collection of Android Jetpack libraries for building Android applications. It provides a suite of backward-compatible APIs that expose modern platform features on older Android versions, ensuring consistent functionality across devices. The project is built around lifecycle-aware component architecture, with tools like ViewModel for preserving UI data across configuration changes, LiveData for lifecycle-aware data observation, and WorkManager for constraint-based background task scheduling. The project distinguishes itself through compile-time code generation and type
MyLinearLayout is an Objective-C UI layout framework and responsive layout engine for iOS. It serves as a multi-pattern view orchestrator that organizes interface elements using a combination of linear, relative, and grid layout patterns. The library brings CSS flexbox and floating element behavior to iOS views for dynamic space distribution. It includes a dedicated system for right-to-left language orientations, providing automatic mirroring of interface elements to support localized layouts. The framework covers a broad range of arrangement strategies, including flow-based element wrapping
flutter-folio is a reference application and portfolio demonstrating the implementation of a single codebase that delivers native user experiences across mobile, desktop, and web platforms. It serves as a showcase for cross-platform UI frameworks and design patterns targeting iOS, Android, macOS, Windows, Linux, and web browsers. The project focuses on adaptive UI design, providing examples of how to automatically adjust layouts and interaction patterns based on screen size and input devices. It illustrates the mapping of shared application logic to platform-specific idioms to meet the expect
This repository provides a collection of runnable code samples that demonstrate best practices for building Android user interfaces across a wide range of devices and scenarios. The samples cover the full spectrum of modern Android UI patterns, from adaptive layouts that automatically adjust to large screens and foldable devices to interactive home screen widgets and conversation-style notifications. The samples explore key capability areas including adaptive layouts powered by window size classes, foldable screen adaptation with hinge state handling, and declarative UI construction using Com
Universal API for request permission and get its statuses.
XXPermissions is a framework and manager for handling runtime and special system permissions across different Android operating system versions. It provides a unified interface for requesting standard permissions and directing users to system settings pages for advanced access control, such as file access and accessibility services. The project features a backward compatibility layer that abstracts version-specific logic, removing the need for manual operating system version checks in client code. It utilizes a chainable request pipeline to queue multiple permissions and manage their asynchro
RxPermissions is a reactive permissions library for Android that manages runtime system permissions using RxJava observables. It serves as a wrapper for the Android runtime permission manager, converting asynchronous system requests and their results into a unified reactive stream. The library eliminates the need for fragmented callback methods by using a hidden fragment to intercept permission request results. This allows the request and the resulting outcome to remain within a single logic flow, avoiding boilerplate callbacks in the activity. The system supports requesting multiple permiss
PermissionsDispatcher is a declarative Android API and runtime permission manager. It provides a structured system for requesting and verifying system permissions while separating authorization logic from general business code. The project focuses on managing the permission request workflow, which includes justifying requests with custom explanations and handling user responses to system prompts. It also functions as a system settings guide, directing users to the manual Android settings menu for special permissions that require approval outside of the application.
Android-Expert is a collection of educational resources and step-by-step instructional materials for learning Android app programming. It provides a comprehensive learning path for building mobile applications using the Kotlin programming language and Android Studio. The material covers the full development lifecycle, from designing interactive user interfaces with lists, cards, and sliders to implementing navigation workflows and screen transitions. It also includes instruction on connecting applications to remote servers to fetch external data and integrating that data into the app flow. T
SPPermissions is a Swift library that centralizes permission status checks and request flows across iOS and macOS system services. It provides a unified API for checking the current authorization state of any system permission and requesting access through the appropriate system dialog, all through a single interface. The library uses typed enums to map each system permission to a distinct case, allowing developers to check status and request authorization with a single method call and closure-based callback. It automatically derives the required Info.plist usage-description keys from the per
TakePhoto is an Android media capture framework and image processing library designed to manage photo acquisition and manipulation. It provides a toolkit for capturing new images via the device camera and selecting existing images from the system gallery or local file storage. The framework distinguishes itself through automatic activity and session state restoration, which recovers the capture process after the system recycles an activity. It also includes a unified handler for managing runtime media permissions for camera and storage access across different Android versions. The library co