A user or admin facing problem managing data on excel sheet.
He/She need a system to perform at least following operations
- Add Record
- Modify Record
- Delete Record
- Show Listing and Search Data to get specific Information.
User need a system which should be accessible from internet so that he can work from any machine (laptop/desktop/mobile).
You need to develop a web application with best of your knowledge
Roles: Admin
With correct credentials admin should be able to login and see the dashboard.
if credentials are wrong he will stay on login page and show a message – wrong credentials.
On successful login admin can see users list perform all CRUDL operations.
NOTE: you need to use vim editor to edit files
Following are the wireframes for reference.





Technologies to be used
- composer for package management and autoload
- ini for configuration
- git and gitlab for version control
- HTML5 CSS3 Bootstrap 5 for UI/UX
- jquery 3.6 or javascript for validation and AJAX
- php 7.4 or 8 as backend programming language
- mysql 8 database
- PDO for database operations
- PHPUnit for unit testing
- python and php for automation script (Use cron jobs to automatically run script)
- nginx web server
- use infinityfree / webserver / cloudserver for website hosting
- Jenkins and git-ftp for CI/CD
MVP / Deliverable
- P0
- Users Listing
- Delete User Record
- Add User Record with Profile Picture
(User status should be enum in database table: enable, disable, blocked, active, inactive) - Update User Record
- Session Management Login / Logout
- P1
- View User Details in Modal Window
- Pagination
- Sorting
- Searching
- Filtering
- P2
- Frontend – Backend Validation
- Export CSV Users
- Bulk Upload CSV
- Activity Log
- Export Activity Log
- P3
- Login with OTP i.e. 2FA (Use Redis to store OTP)
- Login Logout for user account
- Inactive User status if not logged in for 3 consecutive days
- Change Admin and User Password from their respective account
- Secret Questions and Forgot Password / Recover Password using secret questions or through the email link
- P4
- REST API (Web Services) for User CRUDL Operations
- Protect REST API using Basic Authentication or JWT token
- Login with google API or Facebook API
- PHPUnit test for all functionalities
- Licensing or limit user registration
- P5
- Dashboard showing following summary (Use highcharts)
- Total User
- Active Users
- License Count / Usage Count
- Online Users
- Weekly Registration Stats
- Dashboard showing following summary (Use highcharts)
Schema

Ref SQL Queries
SELECT * FROM users ORDER BY id DESC;
SELECT * FROM users WHERE id = 3;
DELETE FROM users WHERE id = 3;
INSERT INTO users (id, name, age, city, added_at, updated_at) VALUES (NULL, 'sonam gupta', 18, 'gorakhpur', NOW(), NOW());
UPDATE users SET name = 'Sonam Gupta', age = 20, city = 'Gorakhpur', updated_at = NOW() WHERE id = 5;
Reference
Php CRUD Application – How to Create Website Using Php – YouTube