## bernini [![Build Status](https://qa.fukurokuju.dev/api/badges/catalin/bernini/status.svg)](https://qa.fukurokuju.dev/catalin/bernini) ### dependencies - `poetry` - `^python3.8` including development libraries ### up n runnin ```bash cp bernini/settings.py-template bernini/settings.py poetry install ./wrapper mi # migrate ./wrapper r # runserver at localhost:8000 # goto localhost:8000/api ``` #### server email configuration - open bernini/settings.py and fill these fields ```python EMAIL_HOST = "some.smtp.server" EMAIL_PORT = "someort" EMAIL_HOST_USER = "someuser@some.server" EMAIL_HOST_PASSWORD = "somepassword" EMAIL_USE_TLS = True ``` - this will send an email when calling `/api/orders/{order}/sent` which will render `bernini/templates/order_sold.html` as body #### fixtures ```bash ./wrapper.sh m loaddata users ./wrapper.sh m loaddata products ./wrapper.sh m loaddata product ./wrapper.sh m loaddata lines ``` ### api - based on [Django REST framework](https://www.django-rest-framework.org/) - auth system using and extending django's `contrib.auth` - admin available at [/](http://localhost:8000/) - api available at [/api](http://localhost:8000/api) - documentation available at - [/docs/openapi](http://localhost:8000/docs/openapi) - [/docs/swagger](http://localhost:8000/docs/swagger) - [/docs/redoc](http://localhost:8000/docs/redoc) ### models - `Product`: self-explanatory -- models a price and a name describing the product - `SaleOrderLine`: middleman model between the main sale one and a product, needed in order to add quantities to the aforementioned main sale model - `SaleOrder`: main sale model