This project is a frontend UI for managing users
, roles
, and permissions
in a role-based access control (RBAC) system.
It allows administrators to:
- View, manage, and assign roles and permissions to users in a secure and efficient way.
- The design focuses on user experience, responsiveness, and intuitive functionality to streamline role and permission management.
- User Management:
View
,add
,edit
, ordelete users
. Assignroles
to users and toggle their status (Active/Inactive
). - Role Management: Define and edit
roles
. Assignpermissions
to roles (Read
,Write
,Delete
) and createcustom attributes
for roles. - Permissions Management: Assign or modify
permissions
dynamically. Clear visual representation ofpermissions
for easy understanding. - Mock API Simulation: Simulated API calls for
CRUD operations
on users and roles. Server responses are mocked to simulate real-time functionality.
- Frontend Framework:
React
- Styling:
Tailwind CSS
- State Management: React's
useState
/useReducer
- API Simulation: Mock service with
JSON
orJavaScript functions
to simulate API calls - Responsive Design: Tailored for
mobile
anddesktop devices
Follow these steps to set up the project locally:
-
Clone the repository:
git clone https://github.com/Aabhi2002/RBAC-VRV-Security-main.git
-
Install dependencies:
npm install
-
Start the development server:
npm start
This will start the app in development mode. Open
http://localhost:3000
to view it in the browser.
-
Add Role:
- On the UI, start by clicking on the
Add Role
button. - Define the role you want to create (e.g.,
Admin
,Editor
,Viewer
). - Assign
permissions
(Read
,Write
,Delete
) to the role by selecting the corresponding checkboxes. - Save the role.
- On the UI, start by clicking on the
-
Add User:
- Navigate to the
User Management
section. - Click on the
Add User
button. - Enter the user's
full name
andemail address
. - Select the role for the user from the
dropdown menu
(roles must be created beforehand in theRole Management
section). - Define whether the user is currently active by checking the
Active
checkbox. - Click
Save
to add the user.
- Navigate to the
-
Assign Roles and Permissions:
The assignedroles
determine what actions the user can perform based on thepermissions
configured during role creation.
This sequence ensures that roles are defined first, and users are added and managed with assigned roles and permissions.
Once the app is running, you will be able to:
- Navigate to the
User Management
section toadd/edit/remove users
. - In the
Role Management
section, definenew roles
and managepermissions
. - Use the
Permissions Management
section to modifyrole permissions
.
Thank you for giving me the opportunity to work on this project. It has been a great learning experience, and I gained valuable insights while working on it.
I am excited about the possibility of contributing further to VRV Security
in the future.