awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Zizaco avatar

Zizaco/entrust

0
View on GitHub↗
6,008 stars·1,283 forks·PHP·MIT·26 views

Entrust

Entrust is a role-based access control library for the Laravel framework and a general permission management system for PHP. It provides a backend tool for linking users to specific roles and permissions to evaluate authorization rules.

The system distinguishes itself through a logic engine capable of complex access rule evaluation, including boolean logic and wildcard-based permission matching. This allows for authorization checks based on pattern matching or requirements where a user must meet all or any of a set of specified permissions.

The library covers route access restriction via middleware and conditional UI visibility to show or hide interface elements based on user authorization. It also includes utilities for role and permission assignment and role-based user filtering through database integration.

Features

  • Role-Based Access Control - Implements a comprehensive role-based access control system for managing user permissions and access levels.
  • User Role Management - Provides tools for assigning, modifying, and auditing user roles and permissions within the application.
  • User - Provides utilities to verify if a user possesses specific permissions using multiple matching strategies.
  • Permission Management Systems - Functions as a backend system for linking users to access levels and evaluating authorization rules.
  • Relational Permission Mappings - Provides a persistent database backend for linking users, roles, and permissions.
  • User Role Assignments - Provides a system for associating individual users with specific roles and permissions.
  • Runtime Permission Verifications - Includes utilities to verify if a user has the required permissions before allowing an action or view.
  • Laravel RBAC Libraries - Provides a dedicated role-based access control system tailored for the Laravel framework.
  • Wildcard Permission Matching - Supports wildcard-based pattern matching to grant broad permissions across multiple related resources.
  • Route Middleware - Provides middleware to intercept HTTP requests and validate user roles before granting access to routes.
  • Interface Element Visibility - Allows interface elements to be shown or hidden based on a user's required access levels.
  • Route-Based Access Restrictions - Blocks requests to specific paths or route groups based on the assigned roles of the user.
  • UI Element Access Controls - Controls the visibility and interaction of specific user interface elements based on user permissions.
  • Conditional Access Rules - Features a logic engine for evaluating complex, conditional access rules using roles and permissions.
  • Middleware Route Filters - Ships request filters that restrict route access based on assigned user roles and permissions.
  • Boolean Access Expressions - Implements dynamic evaluation of boolean expressions to determine if users meet specific permission requirements.
  • Permission-Based Visibility Controls - Implements logic to toggle the visibility of UI elements based on the user's authorization status.
  • Authentication and Authorization - Implements role-based access control.

Star history

Star history chart for zizaco/entrustStar history chart for zizaco/entrust

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Entrust

These projects share indexed features with Entrust. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • jeremykenedy/laravel-rolesjeremykenedy avatar

    jeremykenedy/laravel-roles

    1,043View on GitHub↗

    This package provides a comprehensive authorization framework for Laravel applications, enabling the management of user roles and granular permissions through a database-driven system. It allows developers to define access levels and assign them to users, ensuring that security policies are enforced consistently across the entire application. The system distinguishes itself through a hierarchical inheritance model, where permissions automatically propagate from lower-tier roles to higher-tier roles based on a numerical level system. It includes a dedicated administrative web interface that al

    PHPaclacl-managementeloquent
    View on GitHub↗1,043
  • theorchid/platformTheOrchid avatar

    TheOrchid/Platform

    4,791View on GitHub↗

    Platform is a framework for building back-office applications and administrative dashboards using Laravel. It functions as a schema-driven UI framework and CRUD generator that automatically constructs database management interfaces, input forms, and validation rules from programmatic model definitions. The project distinguishes itself through a comprehensive backend UI kit that supports advanced data capture, including geographic coordinate mapping, tabular JSON data matrices, and marketing metadata tracking. It features a robust role-based access control system for managing resource visibili

    PHP
    View on GitHub↗4,791
  • spatie/laravel-permissionspatie avatar

    spatie/laravel-permission

    12,911View on GitHub↗

    This is a role-based access control system for Laravel applications that manages user permissions and roles within a database. It provides a database permissions manager to assign specific abilities to users and roles, utilizing authorization gates to restrict access to routes and interface elements. The project features a wildcard permission system that uses pattern matching to grant broad access across multiple related permissions. It also supports team-scoped access control, allowing users to maintain different roles and permission levels across separate organizational contexts or teams.

    PHP
    View on GitHub↗12,911
  • heeexy/springboot-shiro-vueHeeexy avatar

    Heeexy/SpringBoot-Shiro-Vue

    4,668View on GitHub↗

    SpringBoot-Shiro-Vue is a permission management framework and role-based access control system. It provides a backend implemented with Spring Boot and a frontend built with Vue.js to manage user roles and map them to specific interface and API access rights. The project utilizes a token-based authentication system to verify user identities and enable stateless communication between the frontend and backend. It implements granular UI permission control to show or hide specific buttons and interface elements based on the current user's assigned access rights. The framework covers API security

    Javapermissionsshirospringboot
    View on GitHub↗4,668
Compare all 30 related projects→

Frequently asked questions

What does zizaco/entrust do?

Entrust is a role-based access control library for the Laravel framework and a general permission management system for PHP. It provides a backend tool for linking users to specific roles and permissions to evaluate authorization rules.

What are the main features of zizaco/entrust?

The main features of zizaco/entrust are: Role-Based Access Control, User Role Management, User, Permission Management Systems, Relational Permission Mappings, User Role Assignments, Runtime Permission Verifications, Laravel RBAC Libraries.

Which projects share features with zizaco/entrust?

Projects with overlapping indexed features include: jeremykenedy/laravel-roles — This package provides a comprehensive authorization framework for Laravel applications, enabling the management of… theorchid/platform — Platform is a framework for building back-office applications and administrative dashboards using Laravel. It… spatie/laravel-permission — This is a role-based access control system for Laravel applications that manages user permissions and roles within a… heeexy/springboot-shiro-vue — SpringBoot-Shiro-Vue is a permission management framework and role-based access control system. It provides a backend… casbin/casbin — Casbin is an authorization library that provides a model-based engine for enforcing access control across diverse… stalniy/casl — CASL is a JavaScript authorization library for defining and enforcing declarative access control rules across both…