Lend It

Team Name

The Lenders

Timeline

Summer 2024 – Fall 2024

Students

  • Alexis Caballero – Computer Engineering
  • John Mounce – Software Engineering
  • Omer Khan – Software Engineering
  • Rediet Kebede – Computer Science
  • Kshitij Patel – Computer Science

Abstract

LendIt revolutionizes the way people access tools, equipment, and everyday items by offering a smarter alternative to ownership. Designed to bring convenience and flexibility, the platform connects those who need specific items with individuals or businesses willing to share them. Leveraging modern web technologies like React and Node.js, LendIt delivers a secure, user-friendly experience featuring Firebase authentication, Stripe payment processing, and robust reservation systems. By fostering trust through user reviews and streamlining the rental process, LendIt empowers communities to share resources, save money, and reduce waste in a sustainable and practical way.

Background

We’ve all been there facing the need for an item we’ll use just once, whether it’s a tool for a quick fix, extra tables for a family gathering, or a gadget to complete a project. Often, buying doesn’t make sense, and borrowing isn’t always an option. That’s the problem LendIt aims to solve.

LendIt connects people who need items with those who have them to share, providing a platform where resources are made accessible without the burden of ownership. From tools and furniture to electronics and more, LendIt enables people to find what they need when they need it. It’s a solution that saves money, reduces waste, and fosters a sense of collaboration and community.

Designed with simplicity and security in mind, LendIt incorporates modern features like user reviews to build trust, secure payments through Stripe for peace of mind, and a responsive mobile-friendly design to make borrowing and lending effortless. Whether you’re an individual looking to rent a single item or a business with unused inventory, LendIt ensures that everyone benefits.

Our mission is clear: to create a smarter, more sustainable way to access resources. By helping people share what they already have, LendIt empowers communities, encourages resourcefulness, and makes life a little easier. Why buy when you can rent? LendIt is here to help you make the most of every opportunity.

Project Requirements

  • Safe and Easy User Accounts: People need to feel secure while using LendIt, so creating accounts and logging in will be simple and safe with Firebase and JWT. Users can trust that their information is protected.
  • Effortless Item Listings and Searches: Lenders can easily list items like tools or furniture with photos and details, while renters can quickly search for what they need using filters like category, price, or availability.
  • Simple Reservation System: Borrowing items should be hassle-free. LendIt will offer an easy-to-use reservation system, letting renters select dates and confirm their bookings without confusion.
  • Secure Payments: To build trust, payments will be handled through Stripe, ensuring every transaction is secure and reliable, with clear records for both renters and lenders.
  • Mobile-Friendly Experience: Since most users will access LendIt on the go, the platform will have a responsive, easy-to-navigate design that works perfectly on smartphones.

Design Constraints

  • Cost: With a limited budget, we’ve had to carefully choose cost-effective solutions, relying on open-source technologies like React and MongoDB. Tools like Firebase for authentication and Stripe for payments were chosen for their affordability and robust features. Staying within budget meant prioritizing essential features and using free tiers or trial versions when possible.
  • Schedule: Our project runs on a tight timeline from Summer 2024 to Fall 2024. We faced delays due to team coordination challenges and technical setbacks, particularly with payment systems and Firebase authentication. To keep on track, we implemented regular team meetings and adjusted milestones when needed to ensure steady progress.
  • Functionality: Features like high-resolution images, real-time search, and handling time zone differences are key to the platform’s usability. However, we encountered technical issues with Firebase authentication, such as token handling, and Stripe integration, which was complicated by backend dependency conflicts. Solving these problems required collaborative debugging and rigorous testing.
  • User Experience: A smooth, intuitive user experience is at the heart of LendIt. The web app, powered by React, and the mobile app, built with React Native, are designed to provide a consistent feel across platforms. To make onboarding easy, we’ve included clear, step-by-step instructions for both web and mobile users.
  • Device Compatibility: LendIt must work seamlessly across all devices, from smartphones to tablets. Ensuring compatibility requires testing on various operating systems, screen sizes, and hardware configurations. By addressing these challenges, we’ve ensured a reliable and consistent experience for all users, no matter what device they’re using.

Engineering Standards

  • Authentication & Security: LendIt ensures user safety by using Firebase for authentication, following industry standards like OAuth 2.0 and NIST. All data is encrypted, both while it’s being transferred and when it’s stored.
  • Web Development: The platform is built with accessibility and usability in mind, following W3C guidelines and ISO standards. React and React Native ensure a seamless experience on both web and mobile.
  • Payment Security: Payments are handled securely through Stripe, meeting PCI DSS and ISO standards to protect user transactions with encrypted processing.
  • Data Privacy: User data is safeguarded through GDPR compliance and strict security protocols guided by ISO standards, ensuring transparency and protection.
  • Schedule Compliance: The team uses Agile practices to stay on track, with regular progress checks and sprints to meet deadlines.

System Overview

The LendIt system architecture is organized into four layers: Presentation, Authentication, Application, and Data. The Presentation Layer includes the web and mobile interfaces, built using React and React Native, ensuring consistent and responsive user experience across devices. The Authentication Layer relies on Firebase for secure user registration, login, and password recovery, enabling full access for authenticated users while limiting features for unauthenticated users. The Application Layer integrates services like listing creation, real-time search, booking, and payment, with secure transactions handled through Stripe and real-time availability checks to prevent conflicts. Lastly, the Data Layer comprises a PostgreSQL cluster for storing item details and a MongoDB cluster for managing booking and availability data, ensuring scalability and reliability for the platform. These layers are the backbone of the platform.

Results

Future Work

LendIt has made significant progress, but there are exciting opportunities to enhance the platform in the future. Integrating advanced Stripe features like refunds and split payments could make transactions even smoother and more reliable. Optimizing Firebase authentication would improve login flows, password recovery, and multi-device access for a seamless user experience. Implementing personalized recommendations powered by machine learning could help users find items tailored to their needs. Additionally, refining the mobile app’s responsiveness and usability would make renting and lending more convenient. To support growth, performance testing could ensure the platform remains fast and reliable as more users join.

Project Files

Project Charter
System Requirements Specification
Architectural Design Specification
Detailed Design Specification
Poster

References

Ergonomics of human-system interaction – Part 110: Dialogue principles. International Organization for Standardization (ISO).

Hardt. The OAuth 2.0 Authorization Framework. 2012.

ISO 20022-1:2013. Financial services – Universal financial industry message scheme.

ISO/IEC 27001:2022. Information security, cybersecurity and privacy protection – Information security management systems – Requirements.

PCI DSS Quick Reference Guide. Understanding the Payment Card Industry Data Security Standard, version 3.2.1.

Tool Lending Library – City of Berkeley, CA. https://www.cityofberkeley.info/ToolLendingLibrary/. Accessed: 2024-06-27.

Toolmates Hire. Rent tools & equipment. https://www.toolmateshire.com.au/ Accessed: 2024-06-27.

Tool rental at The Home Depot. https://www.homedepot.com/c/toolandtruckrental. Accessed: 2024-06-27.

Steven McDermott