RideShare is a ride-sharing application that allows users to search for available rides, create their own rides, and manage their ride requests and bookings. The project is built using React for the frontend and includes components for user authentication, ride search, ride creation, and ride management.
RideShare is a full-stack application that utilizes the Ethereum blockchain for ride management and user authentication. The project consists of a React frontend and a Solidity smart contract for ride management. The application allows users to search for available rides, create their own rides, and manage their ride requests and bookings.
The project is built using the following technologies:
- React: A JavaScript library for building user interfaces.
- Web3.js: A library for interacting with Ethereum blockchain.
- Solidity: A programming language for writing smart contracts on the Ethereum blockchain.
- Truffle: A development framework for Ethereum.
- Ganache: A local Ethereum blockchain for development and testing.
The application follows a modular architecture with separate components for user authentication, ride search, ride creation, and ride management. The frontend is built using React and utilizes Redux for state management. The backend is implemented as a Solidity smart contract deployed on the Ethereum blockchain.
To run the project locally, follow these steps:
Clone the repository:
git clone https://github.com/badalk121/RideShare
Install dependencies:
cd ride-sharing-app
npm install
Start the development server:
npm start
Open the application in your browser:
http://localhost:3000
Register as a user or log in to your existing account. Search for available rides or create a new ride if you are a driver. Request a ride or manage your existing ride requests. View your ride history and profile.
To run the tests for the project, follow these steps:
Install dependencies:
cd ride-sharing-app
npm install
Run the tests:
npm test
Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.