PhoneHub is a web application for a smartphone store, showcasing the latest brands and phones available in the market.
Click the below Link
- React: Frontend JavaScript library for building user interfaces.
- Tailwind CSS: Utility-first CSS framework for styling.
- Framer Motion: Animation library for React.
- Firebase: Platform for building and running web and mobile applications.
- Firestore: Flexible, scalable database for mobile, web, and server development.
- Redux: State management library for JavaScript apps.
- Stripe: Payment processing platform for online transactions.
- Emailjs: For sending email in contact us.
Client: React, Redux, TailwindCSS
Server: Node, Express
- Browse and search for the latest smartphones.
- Login and signup using Firebase.
- Filter phones.
- Skeleton loading.
- Pagination.
- Dark mode and light mode.
- View details and specifications of each phone.
- Add phones to cart and proceed to checkout.
- Secure payment processing with Stripe.
- Responsive design for mobile and desktop.
To get a local copy up and running follow these steps:
- Node.js installed on your machine
- Firebase project with Firestore setup
- Stripe account for payment integration
-
Clone the repository:
git clone https://github.com/your-username/phonehub.git cd phonehub
-
Install dependencies:
npm install
-
Set up Firebase:
- Create a Firebase project at Firebase Console.
- Add a web app to your Firebase project.
- Copy Firebase configuration settings (found in Firebase Console > Project settings > Your apps) and replace them in
src/firebase/firebaseConfig.js
.
-
Set up Stripe:
- Obtain your Stripe API keys from Stripe Dashboard.
- Replace your Stripe publishable key in
src/components/CheckoutForm.js
.
-
Start the development server:
npm start
-
Open http://localhost:3000 to view it in the browser.
Deploy your app to Firebase Hosting or any other hosting provider:
-
Build the app for production:
npm run build
-
Deploy to Firebase (example):
firebase deploy
Contributions are welcome! Feel free to open a pull request for adding new features, fixing bugs, or improving documentation.
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to the creators of React, Tailwind CSS, Framer Motion, Firebase, Firestore, Redux, and Stripe for their awesome tools and services.