An open API service indexing awesome lists of open source software.

https://github.com/redoy49/fresh-farmers

A subscription box service platform for personalized monthly grocery delivery, including fresh vegetables and fruits.
https://github.com/redoy49/fresh-farmers

ecomerce-website firebase mongodb react subscription-box tailwindcss

Last synced: 3 months ago
JSON representation

A subscription box service platform for personalized monthly grocery delivery, including fresh vegetables and fruits.

Awesome Lists containing this project

README

          

# ๐Ÿฅฌ FreshFarmers โ€“ Subscription Box Service Platform

FreshFarmers is a full-featured subscription box platform that allows users to browse and subscribe to curated monthly grocery boxes, including fresh vegetables, fruits, and other essentials. The platform is designed to save time and provide high-quality products delivered directly to your doorstep.

---

## ๐ŸŒ Live Website

๐Ÿ”— [Visit Live Site](https://subscription-box-df504.web.app)

---

## ๐ŸŽฏ Project Purpose

The goal of FreshFarmers is to simplify grocery shopping for busy individuals through:
- Personalized monthly subscription boxes
- Convenient delivery on the 1st of each month
- Easy management of subscription preferences
- Seamless and secure user experience

---

## ๐Ÿš€ Technologies Used

### ๐Ÿงฉ Frontend:
- React
- React Router DOM
- Tailwind CSS
- DaisyUI
- Swiper.js (for homepage slider)
- React Toastify
- React Icons
- React Helmet for dynamic titles

### ๐Ÿ” Authentication:
- Firebase Authentication (Email/Password + Google)
- Firebase's updateProfile() for user info editing

### ๐ŸŽ Data:
- Static JSON-based service listings
- Hosted images via ImgBB/PostImages

### ๐Ÿš€ Deployment:
- Client: Firebase Hosting

---

## โœจ Key Features

- ๐ŸŒ Fully responsive layout for mobile, tablet, and desktop
- ๐Ÿงญ Dynamic navigation bar showing user profile image and logout option when logged in
- ๐Ÿ‘ค Protected routes with persistent authentication (Profile, Subscription Details, Blog)
- ๐Ÿ” User info update capability using Firebase updateProfile()
- ๐Ÿงพ Subscription box browsing with detailed view and review/rating submission
- ๐ŸŽจ Interactive banner slider implemented with Swiper.js
- ๐Ÿ“Œ Dynamic page titles for SEO and UX via React Helmet
- ๐Ÿ” Show/hide password toggle on registration and login forms
- ๐ŸŒ™ Light/Dark theme toggle using DaisyUI
- ๐ŸŽ‰ Success and error notifications via SweetAlert2 and React Toastify
- ๐Ÿงช Functional "Forgot Password" page with email pre-fill and redirect
- ๐Ÿ›  Custom 404 page with user-friendly messaging

---

## ๐Ÿ“ฆ Dependencies

- `react`
- `react-router-dom`
- `tailwindcss` + `daisyui`
- `swiper`
- `firebase`
- `react-toastify`
- `react-icons`
- `react-helmet`
- `sweetalert2`
- `aos` *(for animation)*

---

## ๐Ÿ› ๏ธ How to Run Locally

### Step 1: Clone the Repository

```bash
git clone https://github.com/redoy49/freshfarmers-client.git
cd freshfarmers-client
```

### Step 2: Install Dependencies

```bash
npm install
```

### Step 3: Create a .env File

```env
VITE_FIREBASE_API_KEY=your_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_auth_domain
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_storage_bucket
VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
VITE_FIREBASE_APP_ID=your_app_id
```

### Step 4: Run the App

```bash
npm run dev
```

---

## ๐Ÿ”— Relevant Links

๐Ÿ”ด **Live Website**: https://subscription-box-df504.web.app
๐ŸŸ  **GitHub Repo**: https://github.com/redoy49/freshfarmers-client

---

## ๐Ÿ“Œ Notes

โœ… Firebase & API credentials are stored securely in `.env`
โœ… SweetAlert2 and React Toastify are used for all user notifications
โœ… Password validation includes uppercase, lowercase, and minimum length rules
โœ… Authentication state persists on page reloads for private routes
โœ… Review and rating system implemented on subscription details page
โœ… Profile page allows users to securely update their display name and photoURL
โœ… Includes custom 404 page and loading spinners
โœ… Dynamic page titles improve UX and SEO

---

## ๐Ÿ‘ค Author

๐Ÿ“ง **Email**: mdredoyhasan49@gmail.com
๐Ÿฆ **Twitter**: [@mdredoyhasan49](https://twitter.com/mdredoyhasan49)