All Projects → HarvestHub → GardenHub

HarvestHub / GardenHub

Licence: AGPL-3.0 License
Improve urban food distribution by connecting community gardeners with pickers 🍆

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects
CSS
56736 projects
shell
77523 projects

Projects that are alternatives of or similar to GardenHub

hapi
Hydro­ponic Automa­tion Plat­form Ini­tia­tive (HAPI)
Stars: ✭ 65 (+333.33%)
Mutual labels:  food
Chi Food
Food Delivery App made by Flutter and Bloc
Stars: ✭ 103 (+586.67%)
Mutual labels:  food
ramys-tedbira
A website (webapp) to get food recipes by recipes names & ingredients.
Stars: ✭ 15 (+0%)
Mutual labels:  food
awesome-veganism
curated list of awesome resources, pointers, and tips related to veganism
Stars: ✭ 41 (+173.33%)
Mutual labels:  vegan
awesome-kacchi
A curated list of awesome Kacchi Biryani available throughout the world.
Stars: ✭ 20 (+33.33%)
Mutual labels:  food
instacart-delivery-slot-finder
Mac Script that notifies you once a delivery slot in available on Instacart
Stars: ✭ 18 (+20%)
Mutual labels:  food
smooth-app
The new Open Food Facts mobile application for Android and iOS, crafted with Flutter and Dart
Stars: ✭ 187 (+1146.67%)
Mutual labels:  food
food-oasis
Repository for the current redevelopment of the Food Oasis Los Angeles website
Stars: ✭ 33 (+120%)
Mutual labels:  community-gardens
Online-Food-Ordering-Web-App
Online Food Ordering System Website using basic PHP, SQL, HTML & CSS. You can use any one of XAMPP, WAMP or LAMP server to run the Web App
Stars: ✭ 96 (+540%)
Mutual labels:  food
recipes
I like food ¯\_(ツ)_/¯
Stars: ✭ 23 (+53.33%)
Mutual labels:  food
ScoutAR
Augmented reality app displays nearby restaurant information in a live camera and map view.
Stars: ✭ 28 (+86.67%)
Mutual labels:  food
nutrifacts.js
A library to calculate nutrition facts, smartly. No third party services or remote DBs involved.
Stars: ✭ 22 (+46.67%)
Mutual labels:  food
openfoodfacts-apirestpython
Python API for Open Food Facts (using a DB dump)
Stars: ✭ 47 (+213.33%)
Mutual labels:  food
food-oasis-la
This is a website with a map of food sources in Los Angeles, and list of resources about food deserts and health, published with Jekyll and GitHub Pages.
Stars: ✭ 24 (+60%)
Mutual labels:  community-gardens
webstore
Bucky Box Web Store Rails App
Stars: ✭ 12 (-20%)
Mutual labels:  food
openfoodfacts-ruby
Open Food Facts API Wrapper
Stars: ✭ 27 (+80%)
Mutual labels:  food
FoodiFi
FoodiFi App in flutter
Stars: ✭ 22 (+46.67%)
Mutual labels:  food
product crawler
The Open Source Search Engine for Product Components
Stars: ✭ 23 (+53.33%)
Mutual labels:  food
testam-em-animais
Webservice da lista de empresas e produtos que efetuam testes em animais do portal Vista-se.
Stars: ✭ 16 (+6.67%)
Mutual labels:  vegan
arisgarden
Electronic Cookbook
Stars: ✭ 52 (+246.67%)
Mutual labels:  food

GardenHub Promo Banner

Build Status Coverage Status Maintainability Known Vulnerabilities Requirements Status Documentation Status Docker Automated build License: AGPL v3 Matrix ID

GardenHub

Formed around the simple idea that food should not go to waste, GardenHub is the solution to the problem of community garden food waste. Despite the best efforts of community gardeners, far too often food produced in community gardens rots on the vine.

GardenHub is building technology to enable gardeners to collaborate and act upon what's growing, ripening, and available for harvest in their gardens. Using this information, GardenHub notifies gardeners, local charities, restaurants, and other stakeholders of the availability of this food.

Read the full documentation on Read the Docs.

Local development

GardenHub provides a script called dev.sh to make local development easy. As long as you have Docker installed, you do not need Python, Django, Postgres, or anything else running on your computer for local development with dev.sh. This is because dev.sh automatically configures a local development environment with Docker containers where all of that is already installed.

Note: This has been tested on GNU/Linux. Your mileage may vary using Docker on other operating systems.

You will need the following packages installed to develop on GardenHub:

  • docker-ce
  • docker-compose
  • git
  • bash

Installing Docker

To check if you already have Docker installed, run docker -v in your terminal. GardenHub has been tested with version 17. If you already have it, skip to the next section.

asciicast

On most GNU/Linux distros, you can use the following command to install Docker:

sudo sh -c "wget -nv -O - https://get.docker.com/ | sh"

After Docker is installed, you'll want to add your user to the docker group so you don't need sudo to run Docker commands.

sudo usermod -aG docker $(whoami)

Finally, log out and back into your computer, and then head to the next section.

Installing Docker Compose

You will also need Docker Compose for local development. Check if you already have it by typing docker-compose version.

If you need to install it, follow the link and select your platform for specific instructions.

Starting the development server

asciicast

With Docker installed and ready to go, just follow these commands:

# Clone the repo
git clone https://github.com/HarvestHub/GardenHub.git

# Enter the project folder
cd GardenHub

# Run the local development server
./dev.sh start

It may take a few minutes to download everything the first time, then it will run more quickly on subsequent attempts.

dev.sh has a few options you can take advantage of.

Command Description
start Launches a Postgres container and a GardenHub app container then starts manage.py runserver.
build Rebuilds the app container. You must do this manually if you change requirements.txt.
manage.py Same as running python manage.py in the app container. Useful for running migrations and other management commands.
setup Installs Docker. Works on many GNU/Linux distros.
docs Runs a local server for editing the docs. Uses sphinx-autobuild within the container.

Hint: ./dev.sh start will run migrations every time before it starts the development server. To skip that, you can run ./dev.sh manage.py runserver to run the development server directly.

Running migrations and management commands

To run migrations, you can use:

# Migrate
./dev.sh manage.py migrate

# Make migrations
./dev.sh manage.py makemigrations

Any other management command may also be run this way.

Rebuilding the container (you have to, sometimes)

Changing application code shouldn't require rebuilding the container. However, you must manually rebuild the container any time you edit requirements.txt. This is because the requirements get installed into the container at build time. You can rebuild the container like so:

./dev.sh build

License

GardenHub is copyright © 2017 HarvestHub. Except where otherwise noted, the code in this repo is licensed under the GNU AGPL version 3 or later. View the LICENSE file for a copy of the full license.

The documentation (in the docs subdirectory) is licensed under the GNU FDL version 1.3 or greater. View docs/LICENSE for a copy of the full license.

Finally, the file gardenhub/templates/gardenhub/email_invitation.html is copyright Lee Munroe and licensed under MIT. The copyright notice and full license text is inside of the source code of the file.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].