{"id":22349043,"url":"https://github.com/afsify/ruramart-directory","last_synced_at":"2025-03-26T11:20:41.342Z","repository":{"id":266305280,"uuid":"895674730","full_name":"afsify/ruramart-directory","owner":"afsify","description":"Discover a dynamic platform connecting rural shops with customers. Explore product listings, read reviews, and make purchases easily. Enjoy user-friendly features and seamless order processing.","archived":false,"fork":false,"pushed_at":"2025-02-05T16:36:33.000Z","size":243,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-05T17:39:28.496Z","etag":null,"topics":["delivery-service","multi-vendor","rural-development"],"latest_commit_sha":null,"homepage":"https://ruramart.vercel.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/afsify.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":"2024-11-28T16:51:43.000Z","updated_at":"2025-02-05T16:36:37.000Z","dependencies_parsed_at":"2024-12-18T18:29:10.944Z","dependency_job_id":"7eefcd1a-14f3-4a8b-b5fc-a35d5774838c","html_url":"https://github.com/afsify/ruramart-directory","commit_stats":null,"previous_names":["afsify/ruramart-directory"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afsify%2Fruramart-directory","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afsify%2Fruramart-directory/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afsify%2Fruramart-directory/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afsify%2Fruramart-directory/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/afsify","download_url":"https://codeload.github.com/afsify/ruramart-directory/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245641430,"owners_count":20648646,"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":["delivery-service","multi-vendor","rural-development"],"created_at":"2024-12-04T11:07:11.612Z","updated_at":"2025-03-26T11:20:41.314Z","avatar_url":"https://github.com/afsify.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ruramart Directory\n\nRuramart is a comprehensive e-commerce platform designed to list and manage shops in rural areas. It aims to bridge the gap between rural shops and potential customers by providing an online presence for these shops, showcasing their products, and offering an easy way for customers to find, review, and purchase products. The platform includes features for user registration and management, product listings, reviews, cart management, and order processing.\n\n## Features\n\n- **User Authentication:** Registration, authentication, and role-based access control for users, sellers, and admins.\n- **Shop and Product Management:** Detailed listings of shops and their products, including descriptions, prices, and availability.\n- **Review System:** Allow users to leave ratings and comments on products.\n- **Live Chat:** Engage in real-time conversations with other users and sellers through the live chat feature.\n- **Order and Cart Management:** Enable users to add products to their cart, place orders, and track order statuses.\n- **Responsive Design:** The platform is designed to provide a seamless experience across various devices.\n- **Modular Architecture:** Embrace a modular architecture that enhances flexibility and scalability for future development.\n\n## Tools and Technologies\n\n### Client-Side Libraries\n\n- **React.js:** A JavaScript library for building user interfaces.\n- **Redux.js:** A predictable state container for JavaScript apps.\n- **TailwindCSS:** A utility-first CSS framework for rapidly building custom designs.\n- **Ant Design:** A design system for enterprise-level products.\n\n**HTTP Client:**\n\n- **Axios:** A promise-based HTTP client for making requests to APIs. Axios is used to interact with the server-side API.\n\n### Server-Side Technologies\n\n- **Node.js:** A JavaScript runtime built on Chrome's V8 JavaScript engine.\n- **Express.js:** A minimal and flexible Node.js web application framework.\n- **Socket.io:** Real-time bidirectional event-based communication.\n- **MongoDB (Mongoose):** A NoSQL database used to store and retrieve data.\n- **JWT Token:** JSON Web Token for user authentication.\n\n## Access the live project\n\nThe live project can be accessed at [https://ruramart.vercel.app](https://ruramart.vercel.app)\n\n## Getting Started\n\n1. **Clone the repository:**\n\n   ```bash\n   git clone https://github.com/afsify/ruramart-directory.git\n   ```\n\n2. **Set up environment variables:**\n\n    Create a `.env` file in the root directory or rename the current `.env.sample` file and configure necessary variables for client and server sides.\n\n    **Client ENV**\n\n   ```bash\n   VITE_STRIPE_KEY = stripe-payment-key\n   VITE_GOOGLE_ID = google-auth-id\n   VITE_JITSI_ID = jitsi-meeting-id\n   VITE_USER_URL = user-backend-url\n   VITE_ADMIN_URL = admin-backend-url\n   VITE_CLOUD_NAME = cloudinary-upload-name\n   VITE_CHAT_PRESET = cloudinary-chat-preset\n   VITE_CLOUD_PRESET = cloudinary-upload-preset\n   VITE_PROFILE_PRESET = cloudinary-profile-preset\n   ```\n\n    **Server ENV**\n\n   ```bash\n   STRIPE_KEY = stripe-secret-key\n   MONGO_URL =  mongo-atlas-url\n   JWT_SECRET = jwt-secret-code\n   GMAIL_USER = smtp-gmail-email\n   GMAIL_PASS = smtp-gmail-password\n   CLIENT_URL = react-frontend-url\n   PRIME_GROUP = prime-group-id\n   ```\n\n3. **Navigate to the client directory:**\n\n    Open a terminal in Visual Studio Code and split it into two terminals. In the first terminal, navigate to the client directory:\n\n    ```bash\n    cd client\n    ```\n\n4. **Install client side dependencies:**\n\n    ```bash\n    npm install\n    ```\n\n5. **Start the client-side application:**\n\n    ```bash\n    npm start\n    ```\n\n    The client-side application will be running on [http://localhost:3000](http://localhost:3000)\n\n6. **Navigate to the server directory:**\n\n    In the second terminal, navigate to the server directory:\n\n    ```bash\n    cd server\n    ```\n\n7. **Install server side dependencies:**\n\n    ```bash\n    npm install\n    ```\n\n8. **Start the server:**\n\n    ```bash\n    npm start\n    ```\n\n    The server will be running on [http://localhost:5000](http://localhost:5000)\n\n## API Documentation\n\nDetailed API documentation can be found in the [Ruramart_API_Documentation.docx](https://docs.google.com/document/d/1Xub1hOzsOH57fbqLDgvqjA53btxdjotfpdEZtRpPnu4/edit?usp=sharing)\n\n## Database Design\n\nThe database design can be viewed in [Ruramart_DB_Design.pdf](https://drive.google.com/file/d/1tlXYTMhN0ru3ZNhUiQD4RV83unqs5HEu/view?usp=sharing)\n\n## Figma Prototype Design\n\nThe Figma prototype design can be viewed [Ruramart_UI](https://www.figma.com/design/4wfCAKoAJAILbrtaqvIl1T/Ruramart?node-id=0-1\u0026t=NQlN96bSPgioJkUh-1)\n\n## Module List\n\nThe list of modules can be found in the [Ruramart_Modules.docx](https://docs.google.com/document/d/1ZOPEifunGgwHVBSV_Tkxmlpm-s6_Z84EoV_lEOCU5MY/edit?usp=sharing)\n\n## Contributing\n\nContributions are welcome! Feel free to open issues and pull requests.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fafsify%2Fruramart-directory","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fafsify%2Fruramart-directory","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fafsify%2Fruramart-directory/lists"}