Giter Club home page Giter Club logo

essensfindung's Introduction

Essensfindung

Student project for DHBW-Friedrichshafen to search for restaurant or recipe suggestions.
Go to ReadTheDocs: https://dhbw-fn-tit20.github.io/essensfindung/

Docs

See GitHub-Pages

Usage

If you want to run it make sure you habe a GoogleAPI KEY
The Application use Geocoding, place-details and nearby-search
!!! The GoogleAPI Requests are not for free, so pay attention on the pricing !!!

Direct with Python

Requirements

To run the application install the requirements:

pip install requirements.txt

OR

poetry install --no-dev

Configuration

If you dont have a PostgreSQL Database use .env-example1 with only the GOOGLE_API. With this Configuration it will create a SQL-Lite DB in the app folder. Not Recommended for Production!

# Copy the Example
cp .env-example1 .env
# Edit the File
nano .env

If you have a PostgreSQL Database use .env-example2

# Copy the Example
cp .env-example2 .env
# Edit the File
nano .env

Impressum / Legal Notice

The legal.json file found at /static/text/legal.json should contain information about the hosting entity. Each property should contains the necessary information with the following format:

  • Full Name (or company name)
  • Address Line 1 (street and house number)
  • Address Line 2 (zip code and city)
  • Phone number (international format)
  • Email (of the contact person)

Docker

You also can build a docker container

git clone https://github.com/DHBW-FN-TIT20/essensfindung.git
cd essensfindung
docker build essensfindung .

If you dont have a PostgreSQL Database start the container:

docker run -p 8080:80 \
-v /essensfindung/app/data \
-e GOOGLE_API_KEY=KEY \
-e SECRET_KEY=KEY \
--name essensfindung \
essensfindung

If you have a PostgreSQL Database:

docker run -p 8080:80 \
-e GOOGLE_API_KEY=KEY \
-e SECRET_KEY=KEY \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=PASSWORD \
-e POSTGRES_SERVER=localhost \
-e POSTGRES_DATABASE=essensfindung \
-e POSTGRES_PORT=5432 \
--name essensfindung \
essensfindung

Docker-Compose

See the docker-compose.yml File

Developing

Python-Verison 3.9 or higher
You can use pyenv to manage you virtual envioremnts.

pyenv install 3.9.7
pyenv rehash
pyenv global 3.9.7

Please formatt your Code with black and validate it with flake8 and pylint.

Pre-Commit

If you use git on console the pre-commit will take affect automatically. This will format the code to reduce merge conflicts and ensure some type of standards.
To activate the automaticall validation type:

pre-commit install

If you want to manuall start the pre-commit check run:

pre-commit run

Dependencies

To develop on this project we recommend to use venv.
You can use some extra tools like:

  • pyenv (manage the global python version you can use)
  • pipx (install global packages for all you venv's),
  • poetry (manage the local venv)

Poetry

To install the requierd dependencies via poetry do:

poetry install

To add a developer only dependencies do:

poetry add -D [Package] [Package]...
poetry export --dev -f requirements.txt -o requirements-dev.txt

To add a production dependencies do:

poetry add [Package] [Package]...
poetry export -f requirements.txt -o requirements.txt

pip

To install the requierd dependencies via pip:

pip install -r requirements-dev.txt

Here you have to manuel manage the requirements.txt files. Use a fixed versions only.

Recipes

To get the recipe json visit: https://github.com/jakevdp/open-recipe-data

essensfindung's People

Contributors

baldur132 avatar floskinner avatar floqueboque avatar screetox avatar jonasstraub avatar

Stargazers

 avatar  avatar

essensfindung's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.