A modern React application for campus item rental and booking.
src/
│
├── assets/ → Images, logos, etc.
├── components/ → Reusable components (Navbar, Footer, ItemCard)
├── pages/ → Page-level components
│ ├── Home.jsx → Landing page
│ ├── Login.jsx → User login
│ ├── Register.jsx → User registration
│ ├── ForgotPassword.jsx → Password reset flow - Step 1
│ ├── VerifyOtp.jsx → Password reset flow - Step 2
│ ├── ResetPassword.jsx → Password reset flow - Step 3
│ ├── Dashboard.jsx → User dashboard
│ ├── Items.jsx → Browse items
│ ├── PostItem.jsx → Add new item
│ ├── BookItem.jsx → Book an item
│ └── About.jsx → About page
├── context/ → Global state (AuthContext)
├── App.jsx → Main app with routes
├── main.jsx → Entry point
└── index.css → Tailwind styles
- Login/Register: Standard user authentication
- Forgot Password Flow:
- ForgotPassword.jsx: User enters email to receive OTP
- VerifyOtp.jsx: User enters 6-digit OTP for verification
- ResetPassword.jsx: User sets new password with strength validation
POST /api/auth/send-otp- Send OTP to user emailPOST /api/auth/verify-otp- Verify OTPPOST /api/auth/reset-password- Reset password with new password
- Responsive design with Tailwind CSS
- Smooth animations with Framer Motion
- Password strength indicator
- Loading states and error handling
- Form validation and user feedback