Skip to content

Repository files navigation

Here’s a detailed README.md file for your P2P Rental App:

P2P Rental App

A peer-to-peer rental platform built with React Native using Expo. This app allows users to list their items for rent and browse/rent items from others. It includes authentication, real-time data storage, and a user-friendly interface.

Features

•	User Authentication:
•	Sign up, log in, and log out using Firebase Authentication.
•	Secure and persistent user sessions.
•	Rental Listings:
•	Users can post items for rent, including images, descriptions, and prices.
•	View all available rental items in a dynamic list.
•	Item Details:
•	Detailed view of each item, including images, price, and contact options.
•	Real-Time Database:
•	All rental items and user data are stored and retrieved from Firebase Firestore.
•	Session Persistence:
•	User data is retained even after logging out.
•	Reusable Components:
•	Modular UI elements such as buttons, input fields, and cards for scalability.

Technologies Used

•	Frontend: React Native (Expo)
•	Backend: Firebase (Authentication & Firestore)
•	Navigation: React Navigation
•	State Management: React Hooks (useState, useEffect)
•	Persistent Storage: Firebase Firestore and Expo Secure Store
•	Styling: React Native Paper and custom styles

Folder Structure

P2PRentalApp/ ├── assets/ # Images and static assets ├── components/ # Reusable UI components ├── navigation/ # Navigation configuration ├── screens/ # App screens (Login, Signup, Home, etc.) ├── services/ # Firebase and API service logic ├── utils/ # Utility functions and constants ├── App.js # App entry point ├── package.json # Dependencies and scripts ├── firebaseConfig.js # Firebase configuration ├── README.md # Project documentation

Setup Instructions

Prerequisites

•	Install Node.js.
•	Install Expo CLI:

npm install -g expo-cli

Clone the Repository

git clone https://github.com/your-username/P2PRentalApp.git cd P2PRentalApp

Install Dependencies

npm install

Start the Project

expo start

•	Use the Expo Go app on your phone or an emulator to preview the app.

Firebase Setup

1.	Go to Firebase Console.
2.	Create a new project named P2PRentalApp.
3.	Enable Email/Password Authentication under Authentication.
4.	Set up Firestore Database for storing rental items.
5.	Add your Firebase configuration to firebaseConfig.js:

const firebaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_AUTH_DOMAIN", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_STORAGE_BUCKET", messagingSenderId: "YOUR_MESSAGING_SENDER_ID", appId: "YOUR_APP_ID", };

Key Screens

1.	Login Screen:
•	Users log in with their email and password.
2.	Signup Screen:
•	New users can create an account.
3.	Home Screen:
•	Displays a list of available rental items.
4.	Add Item Screen:
•	Allows users to add a new rental item.
5.	Item Details Screen:
•	Detailed view of a selected rental item.
6.	Profile Screen:
•	User details and logout functionality.

Contributing

Contributions are welcome! If you’d like to improve this app, follow these steps: 1. Fork the repository. 2. Create a new branch:

git checkout -b feature/YourFeatureName

3.	Commit your changes:

git commit -m "Add your message here"

4.	Push to the branch:

git push origin feature/YourFeatureName

5.	Submit a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For questions or suggestions, feel free to contact: • Name: Your Name • Email: your-email@example.com • GitHub: your-username

Let me know if you’d like help customizing this for your specific project setup!

About

Allow users to list items for rent and browse/rent items from others.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages