Welcome to Grow – a cutting-edge platform that bridges the gap between producers, farmers, and consumers to promote sustainability, reduce food miles, and lower environmental pollution. Our mission is to create a more eco-friendly food supply chain by connecting local farmers directly with consumers, minimizing the need for long-distance transport, and fostering sustainable practices. At Grow, we are committed to promoting sustainable agriculture and empowering local communities, all while offering consumers fresh, local food with reduced environmental impact. Join us in making food sourcing more sustainable, transparent, and efficient!
- User Authentication: Secure login and registration for producers, farmers, and consumers.
- Product Listings: Producers and farmers can list their products with detailed descriptions and prices.
- Voice Recognition: Utilize a basic machine learning model to recognize voice commands for an enhanced user experience.
- Payment Gateway: Secure and seamless transactions using Stripe.
- Sustainability Focus: Connects local producers and consumers to reduce food miles and promote sustainable practices.
- React: A JavaScript library for building user interfaces.
- Redux: State management for React applications.
- Axios: Promise-based HTTP client for the browser and Node.js.
- Node.js: JavaScript runtime built on Chrome's V8 JavaScript engine.
- Express: Fast, unopinionated, minimalist web framework for Node.js.
- MongoDB: NoSQL database for storing user data and product listings.
- Mongoose: Elegant MongoDB object modeling for Node.js.
- Stripe: A suite of APIs powering online payment processing.
-
Clone the repository:
git clone https://github.com/divspark/grow.git cd grow
-
Install dependencies:
- For the frontend:
cd frontend npm install
- For the backend:
cd backend npm install
- For the frontend:
-
Set up environment variables:
- Create a
.env
file in thebackend
directory and add the following variables:MONGO_URI=your_mongodb_connection_string STRIPE_SECRET_KEY=your_stripe_secret_key STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
- Create a
-
Start the development servers:
- For the backend:
cd backend npm start
- For the frontend:
cd frontend npm start
- For the backend:
Stripe is used for secure payment processing. Ensure that your .env
file contains the correct Stripe keys. The payment workflow is integrated into the order creation process, providing a seamless experience for users.
We welcome contributions to the Grow platform! If you would like to contribute, please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes and commit them:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/your-feature-name
- Submit a pull request.