Metadata-Version: 2.4
Name: faker-food-shop
Version: 0.2.0
Summary: A custom Faker provider for simulating food shops
Author: Arribo44
Project-URL: Homepage, https://github.com/arribo44/faker-food-shop
Project-URL: Documentation, https://github.com/arribo44/faker-food-shop#readme
Project-URL: Source, https://github.com/arribo44/faker-food-shop
Project-URL: Bug Tracker, https://github.com/arribo44/faker-food-shop/issues
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: faker>=20.0.0
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: project-url
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# Faker Food Shop Provider

Un provider personnalisé pour [Faker](https://faker.readthedocs.io/) qui permet de générer des données fictives pour simuler des points de vente alimentaires.

## Types de points de vente supportés

- **Pizzeria** - Pizzas de différents types et tailles
- **Boulangerie** - Pains, viennoiseries, pâtisseries
- **Kebab** - Viandes, sauces, accompagnements
- **Crêperie** - Crêpes sucrées et salées
- **Sandwicherie** - Sandwichs de différents types
- **Burger** - Burgers, accompagnements, sauces
- **Restaurant** - Entrées, plats principaux, desserts
- **Café** - Boissons chaudes et froides, snacks
- **Bar** - Boissons alcoolisées, snacks
- **Traiteur** - Plats préparés, menus
- **Glacier** - Glaces, sorbets
- **Chocolaterie** - Chocolats de différents types
- **Fromagerie** - Fromages de différentes origines
- **Charcuterie** - Viandes froides, charcuteries
- **Poissonnerie** - Poissons, fruits de mer
- **Boucherie** - Viandes, découpes

## Installation

```bash
pip install faker-food-shop
```

Ou installez depuis le dépôt :

```bash
cd /chemin/vers/le/depot
git clone <url-du-depot>
cd faker-food-shop
pip install -e .
```

## Utilisation

### Import et configuration

```python
from faker import Faker
from faker_food_shop import FoodShopProvider

fake = Faker()
fake.add_provider(FoodShopProvider)
```

### Exemples de base

#### Types de magasins

```python
# Type de magasin aléatoire
shop_type = fake.shop_type()  # "pizzeria", "boulangerie", etc.

# Nom de magasin
shop_name = fake.shop_name()  # "Pizza Delight", "Boulangerie Martin", etc.

# Nom de magasin pour un type spécifique
pizzeria_name = fake.shop_name("pizzeria")  # "Pizzeria Bella Napoli"
```

#### Boissons

```python
# Boisson aléatoire
-drink = fake.drink()  # "vin rouge", "coca cola", etc.

# Boisson par catégorie
alcoholic_drink = fake.drink("alcoholic")  # "whisky", "bière blonde", etc.
non_alcoholic = fake.drink("non_alcoholic")  # "jus d'orange", "eau plate", etc.
hot_drink = fake.drink("hot")  # "café", "thé vert", etc.

# Catégorie de boisson
-drink_category = fake.drink_category()  # "alcoholic", "non_alcoholic", "hot"
```

#### Produits

```python
# Produit aléatoire pour un type de magasin
product = fake.product("pizzeria")  # "margherita", "quatre fromages", etc.

# Produit avec catégorie spécifique
pizza = fake.product("pizzeria", "pizzas")  # "diavola"
bread = fake.product("boulangerie", "breads")  # "baguette tradition"

# Catégorie de produit pour un type de magasin
category = fake.product_category("boulangerie")  # "breads", "pastries", "viennoiseries"
```

#### Produits spécifiques

```python
# Pizzas
pizza = fake.pizza()  # "quatre saisons"
pizza_size = fake.pizza_size()  # "grande"
pizza_dough = fake.pizza_dough()  # "fine"

# Boulangerie
bread = fake.bread()  # "pain de campagne"
pastry = fake.pastry()  # "éclair"
viennoiserie = fake.viennoiserie()  # "croissant"

# Kebab
kebab_meat = fake.kebab_meat()  # "viande d'agneau"
kebab_sauce = fake.kebab_sauce()  # "blanche"

# Crêperie
sweet_crepe = fake.sweet_crepe()  # "Nutella"
savory_crepe = fake.savory_crepe()  # "complète"

# Autres
sandwich = fake.sandwich()  # "jambon beurre"
burger = fake.burger()  # "cheeseburger"
ice_cream = fake.ice_cream()  # "vanille"
sorbet = fake.sorbet()  # "citron"
cheese = fake.cheese()  # "camembert"
cold_meat = fake.cold_meat()  # "jambon cru"
fish = fake.fish()  # "saumon"
meat = fake.meat()  # "bœuf"
meat_cut = fake.meat_cut()  # "entrecôte"
```

#### Quantités et prix

```python
# Quantité aléatoire
quantity = fake.quantity()  # 1, 2, 3, ..., 100

# Prix aléatoire
price = fake.price()  # 1.0 à 50.0 €

# Prix par catégorie
pizza_price = fake.price(category="pizza")  # 8.0 à 25.0 €
bread_price = fake.price(category="bread")  # 0.8 à 5.0 €
drink_price = fake.price(category="drink")  # 1.5 à 15.0 €

# Prix avec plage personnalisée
custom_price = fake.price(min_price=10.0, max_price=20.0)
```

#### Commandes

```python
# Article de commande
item = fake.order_item("pizzeria")
# {'product': 'margherita', 'category': 'pizzas', 'quantity': 2, 'unit_price': 12.5, 'total': 25.0}

# Commande complète
order = fake.order("boulangerie", min_items=3, max_items=5)
# {
#     'shop_type': 'boulangerie',
#     'shop_name': 'Boulangerie Martin',
#     'items': [
#         {'product': 'baguette tradition', 'category': 'breads', 'quantity': 2, 'unit_price': 1.2, 'total': 2.4},
#         {'product': 'croissant', 'category': 'viennoiseries', 'quantity': 3, 'unit_price': 1.5, 'total': 4.5},
#         ...
#     ],
#     'subtotal': 15.6,
#     'tax_rate': 10.0,
#     'tax_amount': 1.56,
#     'total': 17.16
# }
```

## Exécution de la démo

Pour voir une démonstration complète :

```bash
python -m faker_food_shop
```

## Contribution

Les contributions sont les bienvenues ! Ouvrez une PR ou un issue pour proposer des améliorations.

## Licence

MIT License
