Welcome to Share and Savor, a comprehensive platform dedicated to sharing food among people. Our aim is to create a community where individuals can connect and share their culinary creations with others.
You can visit our live site at Share and Savor.
To run the website locally, follow these steps:
-
Clone the repository:
git clone https://github.com/zahidtdx61/Share-and-Savor-Frontend.git
-
Navigate to the project directory:
cd Share-and-Savor-Frontend -
Install dependencies:
npm install
-
Make an .env file and add these credentials:
VITE_apiKey=<get_this_from_firebase> VITE_authDomain=<get_this_from_firebase> VITE_projectId=<get_this_from_firebase> VITE_storageBucket=<get_this_from_firebase> VITE_messagingSenderId=<get_this_from_firebase> VITE_appId=<get_this_from_firebase> VITE_API_URL=<add_you_backend_api_address>
-
Start the development server:
npm run dev
- Users can securely sign up using their email address or quickly sign in using their Google or GitHub accounts through
Firebaseintegration. - Authentication is managed and verified by our backend services to ensure secure access to user-specific functionalities.
- Signed-in users have the ability to share their food creations with the community.
- Users can upload images, provide descriptions, and specify dietary preferences or restrictions for their shared dishes.
- Other users can browse and explore the shared food items, leave comments, and interact with the community.
- Users can browse and search for available food items shared by other users.
- They can view details such as images, descriptions, and dietary preferences or restrictions.
- This feature helps users find and connect with others who are willing to share their food.
- Signed-in users can update or delete their own shared food items.
- This allows users to make changes to their shared dishes or remove them if necessary.
- Users can request specific food items from other users.
- They can send a request to the owner of the food item, expressing their interest in receiving it.
- This feature facilitates communication and coordination between users for food sharing.
- React: Frontend development framework for building user interfaces.
- React Router: For declarative routing within the React application.
- React DOM: Enables rendering of React components in the DOM.
- @mui/joy: MUI's Joy component library.
- Firebase: Backend-as-a-Service platform for hosting and managing application data and authentication.
- Axios: HTTP client for making API requests.
- Tankstack Query: Library for managing state and data fetching in React applications.
@mui/joy: MUI's Joy component library.react-router-dom: Library for declarative routing within the React application.react-hook-form: Library for building forms in React with easy form validation.@tanstack/react-query: Library for managing state and data fetching in React applications.axios: HTTP client for making API requests.swiper: Modern touch slider library for building interactive carousels and sliders.react-datepicker: Customizable date picker component for React.useAsyncEffect: Custom hook for handling asynchronous effects in React components.lottie-react: Used for rendering Lottie animations in React components.react-icons: Library for popular icon packs as React components.react-helmet-async: Library for managing document head contents in React applications.react-hot-toast: Toast notifications library for React applications.react-tooltip: Library for creating tooltips in React components.prop-types: Runtime type checking for React props and similar objects.eslint: Pluggable JavaScript linter.tailwindcss: Utility-first CSS framework.postcss: Tool for transforming CSS with JavaScript.autoprefixer: PostCSS plugin to parse CSS and add vendor prefixes.vite: Next generation frontend tooling.
We welcome contributions from the community to enhance and improve Share and Savor.