Samsarent is a platform where users can list their items for others to borrow and request to borrow items from other users. The application handles the entire borrowing lifecycle, from listing items to approving borrow requests and managing the borrowing process. Additionally, Samsarental features a swap function that allows users to offer their items for exchange. Watch a showcase of the project here: YouTube Demo
- User Authentication: Sign up and login functionality
- Item Management: Add, view, and delete items
- Borrowing System: Request to borrow items, Request to swap items, approve/reject requests
- Delivery Coordination: Lenders can specify delivery details when approving requests
- Notifications: Users are notified of request status changes
- Responsive Design: Works on mobile, tablet, and desktop devices
- Offline Detection: Alerts users when they lose internet connection
- Frontend: Next.js, Material UI
- Backend: Firebase (Authentication, Firestore)
- State Management: React Context API
- Styling: Material UI theming system
- Clone the repository
- Install dependencies
- Create a Firebase project at https://console.firebase.google.com/
- Enable Authentication (Email/Password) and Firestore in your Firebase project
- Create a
.env.localfile in the root directory with your Firebase configuration - Run the development server
- Sign Up/Login: Create an account or login to access the marketplace
- Browse Items: View items available for borrowing
- Add Items: List your own items for others to borrow
- Request Items: Send borrow requests for items you want to use
- Manage Requests: Approve or reject incoming borrow requests
- Specify Delivery: When approving, provide delivery details
- View Requests: Track the status of your incoming and outgoing requests
