30 open-source projects similar to ivanvorobei/sppermissions, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best SPPermissions alternative.
Universal API for request permission and get its statuses.
react-native-permissions is a cross-platform permissions library that provides a unified interface for requesting and checking system permissions across iOS, Android, and Windows. It functions as a permission status manager and device capability auditor to determine if access to sensitive data or hardware is granted, denied, or blocked. The project includes a media access controller to handle limited access to photos and contacts through system-native pickers. It also features a system settings integrator that directs users to device settings pages to manually toggle application and notificat
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
react-native-permissions is a cross-platform mobile permissions library that provides a unified API for checking and requesting hardware and software permissions on iOS, Android, and Windows. It serves as a device permission manager to verify permission status and prompt users for access to device features across different operating systems. The library includes a system settings navigator to direct users to application-specific device settings for modifying blocked or limited permissions. It provides a single interface for managing platform-specific permission requests and notification autho
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
Accompanist is a collection of extension libraries that provide additional functionality and specialized components for the Jetpack Compose UI framework. It serves as a toolkit for implementing common layout and system tasks that extend the core capabilities of declarative UI development on Android. The library provides specialized utilities for managing modal bottom sheet destinations and defining custom animations for screen transitions within a navigation graph. It includes tools for detecting screen folds and display features to create adaptive layouts that adjust based on window size and
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.
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
react-i18next is an internationalization framework that integrates the i18next ecosystem into React applications. It provides a system for replacing hardcoded strings with dynamic keys to support multiple languages across a user interface. The library includes an ICU message formatter for handling complex pluralization and gender-based translations. It features a localization management interface that allows for synchronizing translation keys with remote platforms and performing in-context content editing. The project covers server-side rendering localization with request-isolated translatio
Murder is an entity component system game engine designed for 2D game development. It provides a core framework for managing game objects through an ECS architecture and includes a dedicated 2D game editor for asset management and real-time property configuration. The engine features a specialized 2D rendering pipeline supporting pixel art, sprite slicing, and parallax effects. It includes a hierarchical A* pathfinding system for agent navigation and a comprehensive asset management system for serializing and loading game resources. The project covers a broad range of capabilities, including
Symfony Translation is a PHP library and framework component for internationalizing applications. It provides a complete system for managing message catalogs, handling locale-aware string translation, and formatting messages using ICU MessageFormat syntax to support pluralization, gender, and conditional selection. The component organizes translatable strings into named domains, supports key-based lookup that decouples source text from localized versions, and offers deferred rendering through translatable objects that store parameters and render only when output is needed. The library disting
i18next is a JavaScript localization library and internationalization framework used to translate application text into multiple languages. It functions as a dynamic translation manager that handles translation resources, language detection, and the mapping of unique keys to localized strings. The system features a pluralization and interpolation engine that applies language-specific grammatical rules for numeric counts and injects dynamic variables into strings. It utilizes a plugin-based backend architecture to load and cache translation namespaces from various sources, including remote ser
SwiftGen is a tool that creates strongly typed Swift references for assets, strings, and storyboards to eliminate manual string-based APIs. It functions as a code generator that maps localization keys, static assets, and data models into typed source code using a template-based engine. The project uses custom templates to define the exact structure and syntax of the generated code. This allows the generated output to match specific project conventions while providing a flexible system for mapping translation keys and converting local files, colors, and fonts into typed constants. The tool co
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
AppIntro is an Android onboarding framework used to create swipeable introductory screens and feature walkthrough carousels. It provides a navigation controller to manage wizard-style flow control and a UI component library for handling slide transitions and immersive layouts. The framework integrates system runtime permission requests directly into the onboarding sequence, allowing developers to block navigation until required access is granted. It supports different navigation modes that can toggle between standard and wizard behaviors, including the ability to restrict slide transitions ba
R.swift is a resource generator and build tool plugin for Swift projects that creates type-safe accessors for bundle resources. It maps images, colors, localized strings, and bundle files to autocompleted Swift constants, replacing hardcoded string identifiers with strongly typed wrappers to ensure compile-time validation. The system functions as an asset wrapper that integrates into the build process to synchronize resource identifiers with source code. It utilizes static resource analysis to transform project configuration settings, entitlement values, and asset catalogs into a structured A
AngularJS Internationalization Library is a localization framework for AngularJS 1.x applications. It functions as an i18n translation tool used to swap static user interface text with localized versions based on a selected locale. The framework manages multi-language content through asynchronous loading of translation files to minimize bundle size. It includes systems for handling pluralization rules and interpolating dynamic variables into translation strings. The project also provides capabilities for language switching and fallback-chain resolution to ensure a readable string is displaye
CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools
This project is the .NET Base Class Library, providing the foundational types and APIs required for .NET applications. It serves as a cross-platform runtime library and a standardized managed API framework, acting as the primary set of namespaces for memory management, collections, and asynchronous programming. The library enables the development of enterprise backend infrastructure and the execution of managed code consistently across different operating systems and hardware architectures. It includes capabilities for cross-platform application deployment using self-contained binaries, frame
Carbon is a Go library for semantic date and time calculations, formatting, and parsing. It provides a semantic interface to simplify temporal data handling and improve the readability of date and time manipulations. The library is distinguished by its support for multi-calendar date conversion, allowing transformations between Gregorian, Chinese Lunar, Persian, and Hebrew calendar systems. It also includes a localized temporal framework that uses ISO 639-1 codes to format dates and relative time differences across multiple language locales. Additional capabilities cover global time zone man
Vendure is a Node.js e-commerce engine and headless commerce framework built with NestJS and TypeScript. It serves as a multi-channel commerce platform that manages product catalogs, orders, and customers via a strongly typed GraphQL API. The platform is distinguished by its highly extensible architecture, featuring a customizable administrative dashboard where developers can inject custom React components and entity views. It supports multi-channel commerce, allowing the isolation of products, currencies, and regional catalogs from a single unified backend. The engine covers a broad range o
Revel is a full-stack web framework and toolkit for building applications with the Go language. It implements a model-view-controller architecture to separate business logic from user interface rendering, providing a comprehensive system for routing, parameter binding, and session management. The project distinguishes itself with a high-productivity development environment featuring automatic code compilation and hot-reloading, which refreshes the application state and templates upon file changes without requiring manual restarts. It also employs reflection-based parameter binding to automati
eul is a native macOS system monitor and desktop application built with SwiftUI. It serves as a status bar utility for tracking real-time CPU, memory, network, and battery usage. The application includes a dedicated Bluetooth device battery tracker to monitor the charge levels of connected peripherals. It is developed as a multilingual utility with a localized user interface to support multiple languages. The software covers system resource monitoring and peripheral battery tracking, integrating these metrics directly into the macOS menu bar.
This project is a containerized search infrastructure designed to deploy a privacy-focused metasearch engine. It acts as a self-hosted search proxy that aggregates results from multiple external web, image, and academic search providers while anonymizing requests and stripping trackers to protect user identity. The system utilizes Docker to orchestrate the search instance, integrating caching mechanisms and reverse proxy support to ensure a private and efficient search environment. It employs a modular adapter-based integration to standardize diverse external API responses and a processing pi
This project provides a set of development guidelines and architectural recommendations for building iOS applications. It focuses on structuring Swift applications to decouple business logic from the user interface to improve testability and maintenance. The project covers specific implementation standards for security, such as using keychain storage for sensitive data and TLS certificate pinning for network traffic. It also defines patterns for code quality enforcement through static analysis and compiler configurations, as well as strategies for asset and localization management. The guide
This project is a comprehensive guide to architectural standards and coding patterns for developing maintainable applications within the Laravel framework. It focuses on clean code standards, applying the single responsibility and DRY principles to ensure codebase predictability and consistency. The guide emphasizes decoupling components by moving business logic into service layers and shifting input validation into dedicated request classes to keep controllers lean. It advocates for the use of a service container and dependency injection to reduce class coupling and improve testability. The
Space Station 14 is a C# multiplayer game and roleplay simulation framework. It is built upon an Entity-Component-System (ECS) game engine that separates logic into systems and data into components to manage complex entity interactions. The project functions as a grid-based physics simulator with a YAML data-driven prototype system for defining game objects. The project features a specialized 2D sprite rendering engine that maps server-side appearance data to client-side shaders. It implements a networking model with client-side prediction and dirty-flagged state synchronization to reduce inp
Native alert from Apple Music & Feedback. Contains Done, Heart & Message and other presets.
A polite and unified way of asking for permission on iOS