{"id":25214139,"url":"https://github.com/aburaihan98/equisports-client","last_synced_at":"2026-04-09T06:43:03.703Z","repository":{"id":275930360,"uuid":"922949642","full_name":"aburaihan98/equiSports-Client","owner":"aburaihan98","description":"EquiSports is a responsive sports equipment online store featuring user authentication, product management, and various sports categories. It includes secure login, private routes, a dynamic product display, and sorting functionality, with dark/light theme support and interactive features.","archived":false,"fork":false,"pushed_at":"2025-03-10T13:12:15.000Z","size":149,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-10T14:24:45.905Z","etag":null,"topics":["express-js","firebase","fortawesome","lottie-react","mongodb-atlas","node-js","react-awesome-reveal","react-icons","react-router-dom","react-toastify","react-tooltip","reactjs","sweetalert2","tailwind-css"],"latest_commit_sha":null,"homepage":"https://equisports-8e6c5.web.app/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aburaihan98.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-27T11:35:49.000Z","updated_at":"2025-03-10T13:12:18.000Z","dependencies_parsed_at":"2025-02-05T11:20:55.100Z","dependency_job_id":"9a77c5e8-d1fc-4d2d-8894-f662878acaa6","html_url":"https://github.com/aburaihan98/equiSports-Client","commit_stats":null,"previous_names":["aburaihan98/equisports-client"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aburaihan98%2FequiSports-Client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aburaihan98%2FequiSports-Client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aburaihan98%2FequiSports-Client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aburaihan98%2FequiSports-Client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aburaihan98","download_url":"https://codeload.github.com/aburaihan98/equiSports-Client/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247307961,"owners_count":20917600,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["express-js","firebase","fortawesome","lottie-react","mongodb-atlas","node-js","react-awesome-reveal","react-icons","react-router-dom","react-toastify","react-tooltip","reactjs","sweetalert2","tailwind-css"],"created_at":"2025-02-10T16:58:33.592Z","updated_at":"2025-10-12T22:12:43.129Z","avatar_url":"https://github.com/aburaihan98.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EquiSports - A Sports Equipment Store🏆  \n\nEquiSports is a **sports accessories e-commerce platform** where users can browse, purchase, and manage sports equipment. The website includes **user authentication, product management, sorting, filtering, and a dark/light theme toggle** for a seamless experience. Users can add, update, and delete their listed equipment while enjoying an intuitive UI with **Lottie animations and smooth transitions**. The site ensures **secure authentication with Firebase and protected routes with JWT**, providing a reliable shopping experience. 🚀\n\n![EquiSports Screenshot](https://i.ibb.co.com/xqR1L0Wv/equesports.png)\n\n## live project links:\nhttps://equisports-8e6c5.web.app/\n\n## **Core Features**\n- **User Authentication**: Users can log in and register using email/password or OAuth (Google/GitHub/Facebook/Twitter).\n- **Product Management**: Admin users can add, update, or delete sports equipment.\n- **Private Routes**: Certain pages, such as \"Add Equipment\" and \"My Equipment List,\" are accessible only to authenticated users.\n- **Product Sorting**: Users can sort products by price (ascending/descending).\n- **Responsive Design**: The site is fully responsive, optimized for mobile, tablet, and desktop.\n- **Dark/Light Mode Toggle**: Users can switch between dark and light themes.\n- **Product Details**: Each product has its own details page with more information and a \"View Details\" button.\n- **404 Page**: A dedicated error page for non-existing routes.\n- **Loading Spinner**: A spinner is displayed while loading data.\n\n## **Technologies Used**\n- **Frontend**:\n  - `React.js`: JavaScript library for building user interfaces.\n  - `React Router`: Library for handling client-side routing in React applications.\n  - `Firebase`: Authentication for user login and registration.\n  - `Tailwind CSS`: Utility-first CSS framework for styling.\n  - `Lottie React`: A React component for rendering animations.\n  - `React Awesome Reveal`: A package for adding scroll-based animations.\n  - `React Tooltip`: Adds tooltips to elements.\n  - `React Toastify`: For displaying toast notifications.\n  \n- **Backend**:\n  - `Node.js`: JavaScript runtime built on Chrome's V8 JavaScript engine.\n  - `Express`: Fast, unopinionated web framework for Node.js.\n  - `MongoDB`: NoSQL database for storing product and user data.\n  - `Mongoose`: MongoDB ORM for handling data models.\n  - `JWT (JSON Web Token)`: For user authentication and authorization.\n  - `dotenv`: Loads environment variables from a `.env` file.\n\n- **Hosting**:\n  - **Frontend**: Firebase Hosting.\n  - **Backend**: Vercel.\n\n## **Dependencies Used**\n- **Frontend**:\n  - `react`: ^18.3.1\n  - `react-router-dom`: ^7.0.2\n  - `firebase`: ^11.0.2\n  - `lottie-react`: ^2.4.0\n  - `react-awesome-reveal`: ^4.2.14\n  - `react-tooltip`: ^5.28.0\n  - `react-toastify`: ^10.0.6\n  - `tailwindcss`: ^3.4.15\n  - `react-icons`: ^5.4.0\n\n- **Backend**:\n  - `express`: ^4.17.1\n  - `mongoose`: ^6.0.13\n  - `jsonwebtoken`: ^8.5.1\n  - `dotenv`: ^10.0.0\n\n## **How to Run the Project Locally**\n\n### Prerequisites\n- Node.js\n- MongoDB instance\n- Firebase credentials (for authentication)\n\n## Steps to Run Locally\n\n### 1. Clone this repository -\ngit clone https://github.com/aburaihan98/EquiSports-Client.git\n\n### 2. Go to the cloned project directory\ncd EquiSports-Client\n\n### 3. Just run this command to install node dependencies\nnpm install\n\n### 4. Just run this command\nnpm run dev\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faburaihan98%2Fequisports-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faburaihan98%2Fequisports-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faburaihan98%2Fequisports-client/lists"}