Canned food/shelf very KISS management; Uses OpenFoodFacts as a product source.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
squeaky otter a79cd8b450
Rename dependabot.yml to dependabot.yml.disabled
10 months ago
.github Rename dependabot.yml to dependabot.yml.disabled 10 months ago
.vscode Fix linter config 2 years ago
api Bump pytest from 5.3.2 to 6.0.1 in /api 2 years ago
dist fix service 2 years ago
front Add toasts for all axios errors 2 years ago
.gitignore Add initial API base 2 years ago
.tmuxinator.yml Can add items to shelf 2 years ago Create 2 years ago
LICENSE Create LICENSE 2 years ago coin 2 years ago
babel.cfg Add initial API base 2 years ago


Manage your shelf of canned food. With OpenFoodFacts integration for products source only.




Note: it does requires python 3.7 minimum ! And the latest or LTS nodejs for frontent.

useradd -m -s /bin/bash omnomnomnom
sudo su - omnomnomnom
git clone
python3 -m virtualenv venv
source venv/bin/activate
cd api
pip install -r requirements.txt
pip install waitress
cp config/ config/
$EDITOR config/
export APP_SETTINGS='config.production_secret.Config'
export FLASK_ENV=production
flask db upgrade
flask db-datas 000-seeds

# Front
cd ../front
yarn install
$EDITOR src/main.js
# Change baseURL to
# "https://your.vhost"
yarn build


VHost and service install, as root:

cp /home/omnomnomnom/omnomnomnom/dist/vhost.nginx /etc/nginx/sites-available/omnomnomnom
$EDITOR /etc/nginx/sites-available/omnomnomnom
# change what you need to change
cp /home/omnomnomnom/omnomnomnom/dist/omnomnomnom-web.service /etc/systemd/system/
$EDITOR /etc/systemd/system/
# change paths if needed
systemctl enable omnomnomnom-web
systemctl start omnomnomnom-web

Create an user:

sudo su - omnomnomnom
cd omnomnomnom
source venv/bin/activate
cd api
flask users create
# if needed:
flask users confirm

You should add to the ~/.bashrc file of the omnomnomnom user the following:

export APP_SETTINGS='config.production_secret.Config'
export FLASK_ENV=production

So it ensures you always have the right production config when running commands.


Check changelog (if any) then:

sudo su - omnomnomnom
cd omnomnomnom
git pull
cd front
yarn install
yarn build
# if there is any db/api changes:
cd ~/omnomnomnom/api
flask db upgrade
# and run any seed if mentioned in changelog

Don't forget to restart the omnomnomnom-web service if there was any api change.