faussaire 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.rspec +3 -0
- data/.rubocop.yml +13 -0
- data/CHANGELOG.md +11 -0
- data/CONTRIBUTING.md +251 -0
- data/CUPHEAD.gif +0 -0
- data/LICENSE.txt +35 -0
- data/README.md +904 -0
- data/Rakefile +15 -0
- data/bonjour.png +0 -0
- data/faussaire.gemspec +38 -0
- data/hello.png +0 -0
- data/jadore-rire.gif +0 -0
- data/lib/faussaire/address.rb +192 -0
- data/lib/faussaire/ancien.rb +56 -0
- data/lib/faussaire/base.rb +6 -0
- data/lib/faussaire/bizness.rb +72 -0
- data/lib/faussaire/citation.rb +40 -0
- data/lib/faussaire/cosmos.rb +72 -0
- data/lib/faussaire/creamerie.rb +79 -0
- data/lib/faussaire/gardinerie.rb +76 -0
- data/lib/faussaire/music.rb +56 -0
- data/lib/faussaire/name.rb +93 -0
- data/lib/faussaire/tv.rb +173 -0
- data/lib/faussaire/version.rb +5 -0
- data/lib/faussaire/wine.rb +108 -0
- data/lib/faussaire.rb +30 -0
- data/locale/fr.yml +16633 -0
- data/sig/faussaire.rbs +4 -0
- metadata +78 -0
data/README.md
ADDED
@@ -0,0 +1,904 @@
|
|
1
|
+
# FAUSSAIRE âą Au revoir Lorem Ipsum đ
|
2
|
+
|
3
|
+
### Des données authentiques, des apps réalistes, des seeds ludiques
|
4
|
+
|
5
|
+
**Faussaire** est une alternative made in France Ă la gem [Faker](https://github.com/faker-ruby/faker) en Ruby.
|
6
|
+
|
7
|
+
Conçue pour fournir des données plus précises et moins génériques que [Faker](https://github.com/faker-ruby/faker), elle dispose actuellement d'un set français exhaustif, réaliste et culturellement pertinent pour vos projets Ruby francophones.
|
8
|
+
|
9
|
+
> [!NOTE]
|
10
|
+
> <p align="center">
|
11
|
+
> <a href="#english">
|
12
|
+
> <img src="hello.png" alt="English" width="50" height="50">
|
13
|
+
> </a>
|
14
|
+
> <br>
|
15
|
+
> <a href="#english">
|
16
|
+
> Hey! You can also README in English!
|
17
|
+
> </a>
|
18
|
+
> </p>
|
19
|
+
|
20
|
+
## Table des matiĂšres
|
21
|
+
|
22
|
+
- [Pourquoi utiliser Faussaire ?](#pourquoi-utiliser-faussaire-)
|
23
|
+
- [Installation](#installation)
|
24
|
+
- [Utilisation](#utilisation)
|
25
|
+
- [Modules Disponibles](#modules-disponibles-dans-faussaire)
|
26
|
+
- [DĂ©veloppement](#vous-voulez-participer-)
|
27
|
+
- [Licence](#licence)
|
28
|
+
- [Contribution](#il-manquerait-pas-un-petit-quelque-chose-)
|
29
|
+
|
30
|
+
Nous avons pour projet de proposer une version grecque dans les mois Ă venir, et peut-ĂȘtre une version "globish".
|
31
|
+
|
32
|
+
Quand on aime ce quâon fait, on aime rendre ça ludique.
|
33
|
+
|
34
|
+
Comme moi, ça a dû vous arriver.
|
35
|
+
|
36
|
+
Des phases de débogage interminables avec une base de données peuplée de Lorem Ipsum, ça devient vite lassant.
|
37
|
+
|
38
|
+
Et puis, comment tester cette REGEX sur le format des adresses françaises si les donnĂ©es de test nâont pas de numĂ©ro de dĂ©partement Ă 3 chiffres ?
|
39
|
+
|
40
|
+
Mince, vous venez dâenvoyer votre app en production, mais vous vous rendez compte quâen excluant les caractĂšres spĂ©ciaux, vous avez aussi empĂȘchĂ© StĂ©phane de mettre un accent Ă son prĂ©nom.
|
41
|
+
|
42
|
+
La liste est interminable.
|
43
|
+
|
44
|
+
Si comme moi, vous en avez marre de la standardisation Ă outrance et que vous voulez utiliser une librairie francophone, amusante et enrichissante, vous allez adorer Faussaire.
|
45
|
+
|
46
|
+
C'est quand mĂȘme plus drĂŽle d'avoir une liste d'AOC, un gĂ©nĂ©rateur de phrases "corporate", des mots d'ancien français oĂč un florilĂšge de candidats dĂ©suets de tĂ©lĂ©ralitĂ© quand vous testez votre base de donnĂ©es.
|
47
|
+
|
48
|
+
**Faussaire** a Ă©tĂ© dĂ©veloppĂ©e avec des objectifs prĂ©cis en tĂȘte:
|
49
|
+
|
50
|
+
- _Pertinence culturelle:_ Offrir des données françaises précises et culturellement pertinentes, afin de surpasser les résultats génériques des autres options disponibles.
|
51
|
+
|
52
|
+
- _Réalisme:_ Générer des données qui reflÚtent fidÚlement les contextes français, des adresses aux noms, et bien plus encore. Dans la mesure du possible, nous privilégions l'utilisation de données réelles dans un souci d'authenticité.
|
53
|
+
|
54
|
+
- _Qualité des données:_ Proposer des options de génération de données soigneusement élaborés, précises et complÚtes, qu'il s'agisse de contextes professionnels ou de références culturelles.
|
55
|
+
|
56
|
+
## Installation
|
57
|
+
|
58
|
+
Avant de commencer, vérifiez que Ruby et RubyGems sont bien installés sur votre machine. Vous pouvez utiliser les commandes suivantes :
|
59
|
+
|
60
|
+
_Pour Ruby :_
|
61
|
+
|
62
|
+
```bash
|
63
|
+
ruby -v
|
64
|
+
```
|
65
|
+
|
66
|
+
Cela affichera la version de Ruby installée, si Ruby est bien installé.
|
67
|
+
|
68
|
+
_Pour RubyGems :_
|
69
|
+
|
70
|
+
```bash
|
71
|
+
gem -v
|
72
|
+
```
|
73
|
+
|
74
|
+
Cela affichera la version de RubyGems installée, si RubyGems est bien installé.
|
75
|
+
|
76
|
+
Ensuite, vous pouvez installer **Faussaire** directement via RubyGems :
|
77
|
+
|
78
|
+
```bash
|
79
|
+
gem install faussaire
|
80
|
+
```
|
81
|
+
|
82
|
+
Vous pouvez Ă©galement l'ajouter Ă votre Gemfile :
|
83
|
+
|
84
|
+
```ruby
|
85
|
+
gem 'faussaire'
|
86
|
+
```
|
87
|
+
|
88
|
+
et lancez la commande suivante pour l'installer :
|
89
|
+
|
90
|
+
```bash
|
91
|
+
bundle install
|
92
|
+
```
|
93
|
+
|
94
|
+
## Utilisation
|
95
|
+
|
96
|
+
Pour utiliser **Faussaire** dans vos applications Ruby, il suffit de charger la gem :
|
97
|
+
|
98
|
+
```ruby
|
99
|
+
require 'faussaire'
|
100
|
+
```
|
101
|
+
|
102
|
+
## Modules Disponibles dans Faussaire
|
103
|
+
|
104
|
+
<details>
|
105
|
+
<summary><strong>Faussaire::Ancien</strong></summary>
|
106
|
+
|
107
|
+
Le module `Faussaire::Ancien` permet de générer des noms de figures historiques, de créatures mythologiques et des mots en ancien français. Idéal pour les apps dans des domaines tels que le jeu vidéo, la narration et les applications éducatives.
|
108
|
+
|
109
|
+
```ruby
|
110
|
+
# GénÚre un nom de créature mythologique aléatoire.
|
111
|
+
Faussaire::Ancien.creature
|
112
|
+
# => "Cocatrix"
|
113
|
+
|
114
|
+
# GénÚre un nom de personnage historique aléatoire.
|
115
|
+
Faussaire::Ancien.historic_figure
|
116
|
+
# => "Napoléon Bonaparte"
|
117
|
+
|
118
|
+
# RécupÚre un mot ancien français aléatoire.
|
119
|
+
Faussaire::Ancien.words
|
120
|
+
# => "niquenoque"
|
121
|
+
```
|
122
|
+
</details>
|
123
|
+
|
124
|
+
<details>
|
125
|
+
<summary><strong>Faussaire::Address</strong></summary>
|
126
|
+
|
127
|
+
Le module `Faussaire::Address` génÚre des adresses françaises détaillées. Ce module est particuliÚrement utile pour les tests, les simulations ou toute application nécessitant des données de localisation réalistes.
|
128
|
+
|
129
|
+
```ruby
|
130
|
+
# Renvoie un nom de ville aléatoire.
|
131
|
+
Faussaire::Address.city
|
132
|
+
# => "Achiet-le-Petit"
|
133
|
+
|
134
|
+
# Renvoie un numéro de rue aléatoire jusqu'à 99.
|
135
|
+
Faussaire::Address.street_number_99
|
136
|
+
# => "42"
|
137
|
+
|
138
|
+
# Renvoie un numéro de rue aléatoire jusqu'à 999.
|
139
|
+
Faussaire::Address.street_number_999
|
140
|
+
# => "110"
|
141
|
+
|
142
|
+
# Renvoie un numéro de rue aléatoire jusqu'à 9999.
|
143
|
+
Faussaire::Address.street_number_9999
|
144
|
+
# => "3695"
|
145
|
+
|
146
|
+
# Renvoie un type de rue aléatoire.
|
147
|
+
Faussaire::Address.street_type
|
148
|
+
# => "Avenue"
|
149
|
+
|
150
|
+
# Renvoie un nom de rue aléatoire.
|
151
|
+
Faussaire::Address.street_name
|
152
|
+
# => "Charles Trenet"
|
153
|
+
|
154
|
+
# Renvoie un nom de département aléatoire.
|
155
|
+
Faussaire::Address.dpt_name
|
156
|
+
# => "Loire"
|
157
|
+
|
158
|
+
# Renvoie un numéro de département pour la France métropolitaine.
|
159
|
+
Faussaire::Address.dpt_number
|
160
|
+
# => "25"
|
161
|
+
|
162
|
+
# Renvoie un numéro de département pour les DOM-TOM.
|
163
|
+
Faussaire::Address.dpt_number_other
|
164
|
+
# => "971"
|
165
|
+
|
166
|
+
# Renvoie un code postal aléatoire au format à cinq chiffres.
|
167
|
+
Faussaire::Address.postal_code
|
168
|
+
# => "31200"
|
169
|
+
|
170
|
+
# Renvoie un nom de région aléatoire.
|
171
|
+
Faussaire::Address.region
|
172
|
+
# => "Ăle-de-France"
|
173
|
+
|
174
|
+
# GĂ©nĂšre une adresse complĂšte en utilisant divers composants.
|
175
|
+
Faussaire::Address.full_address
|
176
|
+
# => "88 Bourg Daniel Bustaffa, 91360 Prouville, La RĂ©union (974), RĂ©gion Haute-Normandie"
|
177
|
+
```
|
178
|
+
</details>
|
179
|
+
|
180
|
+
<details>
|
181
|
+
<summary><strong>Faussaire::Bizness</strong> â <i>Brasseur de vent (phrases "corporate" dĂ©nuĂ©es de sens) et noms de marques françaises</i></summary>
|
182
|
+
|
183
|
+
Le module `Faussaire::Bizness` génÚre des noms de marques françaises et des phrases clichés du monde de l'entreprise.
|
184
|
+
|
185
|
+
```ruby
|
186
|
+
# GénÚre un nom de marque française aléatoire.
|
187
|
+
Faussaire::Bizness.brands
|
188
|
+
# => "Boulangerie Paul"
|
189
|
+
|
190
|
+
# GénÚre un "charabia corporate" aléatoire.
|
191
|
+
Faussaire::Bizness.pipotronic
|
192
|
+
# => "En termes de redynamisation de une globalisation référentielle, un meilleur relationnel permet d'solutionner les nécessités back-office."
|
193
|
+
```
|
194
|
+
</details>
|
195
|
+
|
196
|
+
<details>
|
197
|
+
<summary><strong>Faussaire::Citation</strong></summary>
|
198
|
+
|
199
|
+
Le module `Faussaire::Citation` génÚre des proverbes français et des citations philosophiques.
|
200
|
+
|
201
|
+
```ruby
|
202
|
+
# GénÚre une citation philosophique aléatoire.
|
203
|
+
Faussaire::Citation.philo
|
204
|
+
# => "HomĂšre a dit un jour : Le sommeil et la mort sont des frĂšres jumeaux."
|
205
|
+
|
206
|
+
# GénÚre un proverbe français aléatoire.
|
207
|
+
Faussaire::Citation.proverbe
|
208
|
+
# => "Pense deux fois avant de parler, tu en parleras deux fois mieux."
|
209
|
+
```
|
210
|
+
</details>
|
211
|
+
|
212
|
+
<details>
|
213
|
+
<summary><strong>Faussaire::Cosmos</strong></summary>
|
214
|
+
|
215
|
+
Le module `Faussaire::Cosmos` génÚre des données liées aux corps célestes, aux planÚtes et aux événements cosmiques.
|
216
|
+
|
217
|
+
```ruby
|
218
|
+
# GénÚre un nom de planÚte aléatoire.
|
219
|
+
Faussaire::Cosmos.planet
|
220
|
+
# => "Neptune"
|
221
|
+
|
222
|
+
# GénÚre un événement cosmique aléatoire.
|
223
|
+
Faussaire::Cosmos.event
|
224
|
+
# => "Pluie de météorites"
|
225
|
+
|
226
|
+
# GénÚre un nom de quartier dans le cosmos (comme une galaxie ou une nébuleuse).
|
227
|
+
Faussaire::Cosmos.neighborhood
|
228
|
+
# => "Filament de Perseus-Pisces"
|
229
|
+
|
230
|
+
# GénÚre un nom d'exploration spatiale aléatoire.
|
231
|
+
Faussaire::Cosmos.exploration
|
232
|
+
# => "Voyager 2"
|
233
|
+
```
|
234
|
+
</details>
|
235
|
+
|
236
|
+
<details>
|
237
|
+
<summary><strong>Faussaire::Creamerie</strong></summary>
|
238
|
+
|
239
|
+
Le module `Faussaire::Creamerie` génÚre des données liées aux produits laitiers français, parfait pour des applications ou des démonstrations liées à l'alimentation.
|
240
|
+
|
241
|
+
```ruby
|
242
|
+
# GĂ©nĂšre un type de lait al
|
243
|
+
|
244
|
+
Ă©atoire.
|
245
|
+
Faussaire::Creamerie.milk_type
|
246
|
+
# => "Lait de bufflonne"
|
247
|
+
|
248
|
+
# GénÚre un beurre aléatoire.
|
249
|
+
Faussaire::Creamerie.butter
|
250
|
+
# => { name: "Beurre d'Isigny", type: "demi-sel" }
|
251
|
+
|
252
|
+
# GĂ©nĂšre des informations sur les principaux producteurs de beurre.
|
253
|
+
Faussaire::Creamerie.butter_producers
|
254
|
+
# => "N°7: Turquie (215,431 t)"
|
255
|
+
|
256
|
+
# GénÚre un fromage aléatoire, en le liant à une région et une appellation.
|
257
|
+
Faussaire::Creamerie.cheese
|
258
|
+
# => { type: "AOP", name: "Camembert de Normandie", region: "Normandie" }
|
259
|
+
```
|
260
|
+
</details>
|
261
|
+
|
262
|
+
<details>
|
263
|
+
<summary><strong>Faussaire::Gardinerie</strong></summary>
|
264
|
+
|
265
|
+
Le module `Faussaire::Gardinerie` est certifié bio! Des légumes, des fruits et diverses plantes, avec un accent particulier sur leur pertinence en France.
|
266
|
+
|
267
|
+
```ruby
|
268
|
+
# GénÚre un nom de légume aléatoire et son mois de consommation idéal en France.
|
269
|
+
Faussaire::Gardinerie.vegetable
|
270
|
+
# => "Carotte (Mars)"
|
271
|
+
|
272
|
+
# GénÚre un nom de fruit aléatoire et son mois de consommation idéal en France.
|
273
|
+
Faussaire::Gardinerie.fruit
|
274
|
+
# => "Pomme (Janvier)"
|
275
|
+
|
276
|
+
# GĂ©nĂšre un nom de mauvaise herbe nuisible (nuisible pour l'agriculture).
|
277
|
+
Faussaire::Gardinerie.rival_plant
|
278
|
+
# => "Orobanche minor de la famille des Orobanchaceae, parasite sur légumineuses, tabac, carottes, cultures diverses, trÚs répandus dans les régions tempérées"
|
279
|
+
|
280
|
+
# GénÚre un nom de plante carnivore aléatoire.
|
281
|
+
Faussaire::Gardinerie.bang_bang_plant
|
282
|
+
# => "Drosera : piĂšges Ă mucilage avec feuilles et poils qui s'enroulent autour des proies"
|
283
|
+
|
284
|
+
# GénÚre un nom de plante psychotrope aléatoire.
|
285
|
+
Faussaire::Gardinerie.very_naughty_plant
|
286
|
+
# => "Nymphaea caerulea : Lotus bleu dâĂgypte, plante aux effets enivrants et psychoactifs"
|
287
|
+
```
|
288
|
+
</details>
|
289
|
+
|
290
|
+
<details>
|
291
|
+
<summary><strong>Faussaire::Music</strong></summary>
|
292
|
+
|
293
|
+
Le module `Faussaire::Music` génÚre des données liées à différents genres musicaux avec de la house, du rap français et des chansons de variété française.
|
294
|
+
|
295
|
+
```ruby
|
296
|
+
# GénÚre une chanson de house aléatoire.
|
297
|
+
Faussaire::Music.house
|
298
|
+
# => "House is a feeling - LA Riots"
|
299
|
+
|
300
|
+
# GénÚre une chanson de rap français aléatoire.
|
301
|
+
Faussaire::Music.rap
|
302
|
+
# => "Chez nous - Sultan"
|
303
|
+
|
304
|
+
# GénÚre une chanson de variété française aléatoire.
|
305
|
+
Faussaire::Music.variete
|
306
|
+
# => "Mourir sur scĂšne - Dalida"
|
307
|
+
```
|
308
|
+
</details>
|
309
|
+
|
310
|
+
<details>
|
311
|
+
<summary><strong>Faussaire::Name</strong></summary>
|
312
|
+
|
313
|
+
Le module `Faussaire::Name` gĂ©nĂšre des noms français rĂ©alistes, qui peuvent ĂȘtre utilisĂ©s pour la crĂ©ation de personnages, le remplissage de bases de donnĂ©es, ou toute application nĂ©cessitant la gĂ©nĂ©ration alĂ©atoire de noms.
|
314
|
+
|
315
|
+
```ruby
|
316
|
+
# GénÚre un prénom féminin aléatoire.
|
317
|
+
Faussaire::Name.female_first_name
|
318
|
+
# => "Harmonie"
|
319
|
+
|
320
|
+
# GénÚre un prénom masculin aléatoire.
|
321
|
+
Faussaire::Name.male_first_name
|
322
|
+
# => "Jean-Claude"
|
323
|
+
|
324
|
+
# GénÚre un nom de famille aléatoire.
|
325
|
+
Faussaire::Name.family_name
|
326
|
+
# => "Boyer"
|
327
|
+
|
328
|
+
# GénÚre un nom complet en combinant un prénom aléatoire (féminin ou masculin) avec un nom de famille.
|
329
|
+
Faussaire::Name.name
|
330
|
+
# => "Jeanne Gaillard"
|
331
|
+
```
|
332
|
+
</details>
|
333
|
+
|
334
|
+
<details>
|
335
|
+
<summary><strong>Faussaire::Tv</strong></summary>
|
336
|
+
|
337
|
+
Le module `Faussaire::Tv` génÚre des données factices liées à la télévision, y compris des titres d'émissions, des influenceurs, des couples célÚbres, des chaßnes TV, ainsi que des détails spécifiques liés au Festival de Cannes.
|
338
|
+
|
339
|
+
```ruby
|
340
|
+
# GénÚre un titre d'émission de télévision aléatoire.
|
341
|
+
Faussaire::Tv.show
|
342
|
+
# => "Marjolaine et les Millionnaires"
|
343
|
+
|
344
|
+
# GénÚre un nom d'influenceur célÚbre aléatoire.
|
345
|
+
Faussaire::Tv.influencer
|
346
|
+
# => "Le Vrai Bouseuh (Romain Goisbeau)"
|
347
|
+
|
348
|
+
# GénÚre un couple célÚbre de la télévision aléatoire.
|
349
|
+
Faussaire::Tv.famous_couples
|
350
|
+
# => "J.Lo et Diddy (2000)"
|
351
|
+
|
352
|
+
# GénÚre un nom de chaßne TV aléatoire.
|
353
|
+
Faussaire::Tv.channel
|
354
|
+
# => "Canal+"
|
355
|
+
|
356
|
+
# Retourne le nombre total de films présentés au festival.
|
357
|
+
Faussaire::Tv::FestivalCannes.total_films
|
358
|
+
# => 1234
|
359
|
+
|
360
|
+
# GénÚre un pays aléatoire parmi les plus représentés au festival.
|
361
|
+
Faussaire::Tv::FestivalCannes.most_represented_countries
|
362
|
+
# => "161 (Royaume-Uni)"
|
363
|
+
|
364
|
+
# GénÚre un pays aléatoire parmi ceux qui ont remporté des récompenses.
|
365
|
+
Faussaire::Tv::FestivalCannes.awarded_countries
|
366
|
+
# => "GrÚce (total de 1 récompense)"
|
367
|
+
|
368
|
+
# GénÚre un réalisateur ayant remporté deux Palmes d'Or.
|
369
|
+
Faussaire::Tv::FestivalCannes.directors_with_two_palms
|
370
|
+
# => "Ken Loach (Le vent se lĂšve, Moi, Daniel Blake)"
|
371
|
+
|
372
|
+
# GénÚre un nominé ayant reçu plusieurs récompenses.
|
373
|
+
Faussaire::Tv::FestivalCannes.multiple_awardises
|
374
|
+
# => "Dean Stockwell: Le GĂ©nie du mal, Long voyage vers la nuit"
|
375
|
+
|
376
|
+
# GĂ©nĂšre un gagnant de la Palme d'Or.
|
377
|
+
Faussaire::Tv::FestivalCannes.winners
|
378
|
+
# => "Les Meilleures Intentions (Den Goda viljan) par Bille August en provenance de la SuĂšde [1992]"
|
379
|
+
|
380
|
+
# Retourne un chiffre du box-office parmi les films du festival.
|
381
|
+
Faussaire::Tv::FestivalCannes.box_office
|
382
|
+
# => "Apocalypse Now (1979) : 4 537 000 entrées"
|
383
|
+
```
|
384
|
+
</details>
|
385
|
+
|
386
|
+
<details>
|
387
|
+
<summary><strong>Faussaire::Wine</strong></summary>
|
388
|
+
|
389
|
+
Le module `Faussaire::Wine` génÚre des données liées aux vins français (noms de vins avec leur dénomination actuelle, types, bouteilles, régions, prix, et liqueurs).
|
390
|
+
|
391
|
+
```ruby
|
392
|
+
# GénÚre un nom de vin aléatoire.
|
393
|
+
Faussaire::Wine.name
|
394
|
+
# => "AOC Collioure"
|
395
|
+
|
396
|
+
# GénÚre un type de vin ou un style de vin aléatoire.
|
397
|
+
Faussaire::Wine.type
|
398
|
+
# => "Vin tranquille blanc (pression inférieure à 0,5 bar à 20°C)"
|
399
|
+
|
400
|
+
# GénÚre un type de bouteille de vin aléatoire.
|
401
|
+
Faussaire::Wine.bottle_type
|
402
|
+
# => "Bouteille Clavelien (bouteille en verre à col court, contenance de 0,62 L, corps cylindrique surmonté de larges épaules)"
|
403
|
+
|
404
|
+
# GénÚre une région viticole aléatoire.
|
405
|
+
Faussaire::Wine.region
|
406
|
+
# => "Vignoble de Corse (120M⏠en ventes, 2.45âŹ/bt en prix moyen, 1.71âŹ/mÂČ en rentabilitĂ©)"
|
407
|
+
|
408
|
+
# GĂ©nĂšre un prix de vin alĂ©atoire avec 99 centimes et le symbole Euro (âŹ).
|
409
|
+
Faussaire::Wine.price
|
410
|
+
# => "39.99âŹ"
|
411
|
+
|
412
|
+
# GénÚre un nom de liqueur aléatoire.
|
413
|
+
Faussaire::Wine.licocorico
|
414
|
+
# => "AOC Grande Champagne (Eau de vie de vin) [Cognac]"
|
415
|
+
```
|
416
|
+
</details>
|
417
|
+
|
418
|
+
## Vous voulez participer ?
|
419
|
+
|
420
|
+
Pour configurer l'environnement de développement pour **Faussaire** :
|
421
|
+
|
422
|
+
1. Clonez le dépÎt :
|
423
|
+
```bash
|
424
|
+
git clone https://github.com/ikramagix/faussaire.git
|
425
|
+
```
|
426
|
+
2. Accédez au répertoire du projet :
|
427
|
+
```bash
|
428
|
+
cd faussaire
|
429
|
+
```
|
430
|
+
3. Installez les dépendances :
|
431
|
+
```bash
|
432
|
+
bin/setup
|
433
|
+
```
|
434
|
+
4. Lancez les tests :
|
435
|
+
```bash
|
436
|
+
rake spec
|
437
|
+
```
|
438
|
+
|
439
|
+
## Licence
|
440
|
+
|
441
|
+
La gem **Faussaire** est disponible sous [Licence MIT](LICENSE.txt), qui vous permet d'utiliser, modifier et distribuer librement le logiciel contenu dans cette gem.
|
442
|
+
|
443
|
+
> [!IMPORTANT]
|
444
|
+
> La Licence MIT concerne uniquement le logiciel lui-mĂȘme. Des restrictions s'appliquent au jeu de donnĂ©es utilisĂ© dans ce projet (_fr.yml_). Assurez-vous de consulter les conditions spĂ©cifiques liĂ©es Ă l'utilisation des donnĂ©es.
|
445
|
+
|
446
|
+
## Il manquerait pas un petit quelque chose ?
|
447
|
+
|
448
|
+
Toutes les contributions Ă **Faussaire** sont les bienvenues et le seront toujours !
|
449
|
+
|
450
|
+
N'hésitez pas à participer en soumettant vos pull requests :
|
451
|
+
|
452
|
+
- **Issues :** Donnez autant de détails que possible sur le problÚme rencontré et comment le reproduire.
|
453
|
+
- **Pull Requests :** Vous trouverez la marche Ă suivre dans [CONTRIBUTING.md](https://github.com/ikramagix/faussaire/blob/main/CONTRIBUTING.md).
|
454
|
+
|
455
|
+
Merci Ă toi camarade faussaire ! đâ
|
456
|
+
|
457
|
+
<a name="English"></a>
|
458
|
+
|
459
|
+
# FAUSSAIRE âą Goodbye Lorem Ipsum đ
|
460
|
+
|
461
|
+
### Authentic French Data for Realistic Apps & Fun Seeding
|
462
|
+
|
463
|
+
**Faussaire** is a French-made alternative to the [Faker](https://github.com/faker-ruby/faker) gem in Ruby.
|
464
|
+
|
465
|
+
Designed to provide more accurate and less generic data than [Faker](https://github.com/faker-ruby/faker), it currently offers an exhaustive, realistic, and culturally relevant French dataset for your Ruby projects.
|
466
|
+
|
467
|
+
## Table of Contents
|
468
|
+
|
469
|
+
- [Why Use Faussaire?](#why-use-faussaire)
|
470
|
+
- [Installation](#installation)
|
471
|
+
- [Usage](#usage)
|
472
|
+
- [Available Modules](#available-modules-in-faussaire)
|
473
|
+
- [Development](#want-to-contribute)
|
474
|
+
- [License](#license)
|
475
|
+
- [Contribution](#is-something-missing)
|
476
|
+
|
477
|
+
We plan to offer a Greek version in the coming months, and perhaps a "globish" version.
|
478
|
+
|
479
|
+
## Why Using Faussaire ?
|
480
|
+
|
481
|
+
When you love what you do, you like to make it fun.
|
482
|
+
|
483
|
+
Like me, it has probably happened to you.
|
484
|
+
|
485
|
+
Endless debugging phases with a database filled with Lorem Ipsum can quickly become tedious.
|
486
|
+
|
487
|
+
And how do you test that REGEX for French addresses if the test data doesnât include department numbers with 3 digits?
|
488
|
+
|
489
|
+
Oops, youâve just deployed your app to production and realize that by excluding special characters, youâve also prevented StĂ©phane from adding an accent to his name.
|
490
|
+
|
491
|
+
The list goes on.
|
492
|
+
|
493
|
+
If, like me, you're tired of excessive standardization and want to use a francophone, fun, and enriching library, youâre going to love Faussaire.
|
494
|
+
|
495
|
+
Itâs much more fun to have a list of AOC wines, a corporate buzzword generator, old French words, or a lineup of outdated reality TV candidates when testing your database.
|
496
|
+
|
497
|
+
**Faussaire** was developed with specific goals in mind:
|
498
|
+
|
499
|
+
- _Cultural Relevance:_ To provide accurate and culturally relevant French data, surpassing the generic results from other available options.
|
500
|
+
|
501
|
+
- _Realism:_ To generate data that closely mirrors French contexts, from addresses to names and beyond. Whenever possible, we favor the use of real data for authenticity.
|
502
|
+
|
503
|
+
- _Data Quality:_ To offer carefully crafted, precise, and comprehensive data generation options, whether for professional contexts or cultural references.
|
504
|
+
|
505
|
+
## Installation
|
506
|
+
|
507
|
+
Before you begin, ensure that Ruby and RubyGems are installed on your machine. You can use the following commands:
|
508
|
+
|
509
|
+
_For Ruby:_
|
510
|
+
|
511
|
+
```bash
|
512
|
+
ruby -v
|
513
|
+
```
|
514
|
+
|
515
|
+
This will display the installed Ruby version if Ruby is correctly installed.
|
516
|
+
|
517
|
+
_For RubyGems:_
|
518
|
+
|
519
|
+
```bash
|
520
|
+
gem -v
|
521
|
+
```
|
522
|
+
|
523
|
+
This will display the installed RubyGems version if RubyGems is correctly installed.
|
524
|
+
|
525
|
+
Then, you can install **Faussaire** directly via RubyGems:
|
526
|
+
|
527
|
+
```bash
|
528
|
+
gem install faussaire
|
529
|
+
```
|
530
|
+
|
531
|
+
You can also add it to your Gemfile:
|
532
|
+
|
533
|
+
```ruby
|
534
|
+
gem 'faussaire'
|
535
|
+
```
|
536
|
+
|
537
|
+
and run the following command to install it:
|
538
|
+
|
539
|
+
```bash
|
540
|
+
bundle install
|
541
|
+
```
|
542
|
+
|
543
|
+
## Usage
|
544
|
+
|
545
|
+
To use **Faussaire** in your Ruby applications, simply load the gem:
|
546
|
+
|
547
|
+
```ruby
|
548
|
+
require 'faussaire'
|
549
|
+
```
|
550
|
+
|
551
|
+
## Available Modules in Faussaire
|
552
|
+
|
553
|
+
<details>
|
554
|
+
<summary><strong>Faussaire::Ancien</strong></summary>
|
555
|
+
|
556
|
+
The `Faussaire::Ancien` module generates names of historical figures, mythological creatures, and old French words. Ideal for apps in areas like video games, storytelling, and educational applications.
|
557
|
+
|
558
|
+
```ruby
|
559
|
+
# Generates a random mythological creature name.
|
560
|
+
Faussaire::Ancien.creature
|
561
|
+
# => "Cocatrix"
|
562
|
+
|
563
|
+
# Generates a random historical figure name.
|
564
|
+
Faussaire::Ancien.historic_figure
|
565
|
+
# => "Napoléon Bonaparte"
|
566
|
+
|
567
|
+
# Retrieves a random old French word.
|
568
|
+
Faussaire::Ancien.words
|
569
|
+
# => "niquenoque"
|
570
|
+
```
|
571
|
+
</details>
|
572
|
+
|
573
|
+
<details>
|
574
|
+
<summary><strong>Faussaire::Address</strong></summary>
|
575
|
+
|
576
|
+
The `Faussaire::Address` module generates detailed French addresses. This module is particularly useful for testing, simulations, or any application requiring realistic location data.
|
577
|
+
|
578
|
+
```ruby
|
579
|
+
# Returns a random city name.
|
580
|
+
Faussaire::Address.city
|
581
|
+
# => "Achiet-le-Petit"
|
582
|
+
|
583
|
+
# Returns a random street number up to 99.
|
584
|
+
Faussaire::Address.street_number_99
|
585
|
+
# => "42"
|
586
|
+
|
587
|
+
# Returns a random street number up to 999.
|
588
|
+
Faussaire::Address.street_number_999
|
589
|
+
# => "110"
|
590
|
+
|
591
|
+
# Returns a random street number up to 9999.
|
592
|
+
Faussaire::Address.street_number_9999
|
593
|
+
# => "3695"
|
594
|
+
|
595
|
+
# Returns a random street type.
|
596
|
+
Faussaire::Address.street_type
|
597
|
+
# => "Avenue"
|
598
|
+
|
599
|
+
# Returns a random street name.
|
600
|
+
Faussaire::Address.street_name
|
601
|
+
# => "Charles Trenet"
|
602
|
+
|
603
|
+
# Returns a random department name.
|
604
|
+
Faussaire::Address.dpt_name
|
605
|
+
# => "Loire"
|
606
|
+
|
607
|
+
# Returns a department number for metropolitan France.
|
608
|
+
Faussaire::Address.dpt_number
|
609
|
+
# => "25"
|
610
|
+
|
611
|
+
# Returns a department number for overseas departments.
|
612
|
+
Faussaire::Address.dpt_number_other
|
613
|
+
# => "971"
|
614
|
+
|
615
|
+
# Returns a random postal code formatted to five digits.
|
616
|
+
Faussaire::Address.postal_code
|
617
|
+
# => "31200"
|
618
|
+
|
619
|
+
# Returns a random region name.
|
620
|
+
Faussaire::Address.region
|
621
|
+
# => "Ăle-de-France"
|
622
|
+
|
623
|
+
# Generates a complete address using various components.
|
624
|
+
Faussaire::Address.full_address
|
625
|
+
# => "88 Bourg Daniel Bustaffa, 91360 Prouville, La RĂ©union (974), RĂ©gion Haute-Normandie"
|
626
|
+
```
|
627
|
+
</details>
|
628
|
+
|
629
|
+
<details>
|
630
|
+
<summary><strong>Faussaire::Bizness</strong> â <i>Windbag (nonsensical corporate phrases) and French brand names</i></summary>
|
631
|
+
|
632
|
+
The `Faussaire::Bizness` module generates French brand names and cliché corporate phrases.
|
633
|
+
|
634
|
+
```ruby
|
635
|
+
# Generates a random French brand name.
|
636
|
+
Faussaire::Bizness.brands
|
637
|
+
# => "Boulangerie Paul"
|
638
|
+
|
639
|
+
# Generates random "corporate buzzwords."
|
640
|
+
Faussaire::Bizness.pipotronic
|
641
|
+
# => "En termes de redynamisation de une globalisation référentielle, un meilleur relationnel permet d'solutionner les nécessités back-office."
|
642
|
+
```
|
643
|
+
</details>
|
644
|
+
|
645
|
+
<details>
|
646
|
+
<summary><strong>Faussaire::Citation</strong></summary>
|
647
|
+
|
648
|
+
The `Faussaire::Citation` module generates French proverbs and philosophical quotes.
|
649
|
+
|
650
|
+
```ruby
|
651
|
+
# Generates a random philosopher quote.
|
652
|
+
Faussaire::Citation.philo
|
653
|
+
# => "HomĂšre a dit un jour : Le sommeil et la mort sont des frĂšres jumeaux."
|
654
|
+
|
655
|
+
# Generates a random French proverb.
|
656
|
+
Faussaire::Citation.proverbe
|
657
|
+
# => "Pense deux fois avant de parler, tu en parleras deux fois mieux."
|
658
|
+
```
|
659
|
+
</details>
|
660
|
+
|
661
|
+
<details>
|
662
|
+
<summary><strong>Faussaire::Cosmos</strong></summary>
|
663
|
+
|
664
|
+
The `Faussaire::Cosmos` module generates data related to celestial bodies, planets, and cosmic events.
|
665
|
+
|
666
|
+
```ruby
|
667
|
+
# Generates a random planet name.
|
668
|
+
Faussaire::Cosmos.planet
|
669
|
+
# => "Neptune"
|
670
|
+
|
671
|
+
# Generates a random cosmic event.
|
672
|
+
Faussaire::Cosmos.event
|
673
|
+
# => "Pluie de météorites"
|
674
|
+
|
675
|
+
# Generates a neighborhood name in the cosmos (like a galaxy or nebula).
|
676
|
+
Faussaire::Cosmos.neighborhood
|
677
|
+
# => "Filament de Perseus-Pisces"
|
678
|
+
|
679
|
+
# Generates a random space exploration name.
|
680
|
+
Faussaire::Cosmos.exploration
|
681
|
+
# => "Voyager 2"
|
682
|
+
```
|
683
|
+
</details>
|
684
|
+
|
685
|
+
<details>
|
686
|
+
<summary><strong>Faussaire::Creamerie</strong></summary>
|
687
|
+
|
688
|
+
The `Faussaire::Creamerie` module generates data related to French dairy products, perfect for food-related applications or demos.
|
689
|
+
|
690
|
+
```ruby
|
691
|
+
# Generates a random type of milk.
|
692
|
+
Faussaire::Creamerie.milk_type
|
693
|
+
# => "Lait de bufflonne"
|
694
|
+
|
695
|
+
# Generates a random butter.
|
696
|
+
Faussaire::Creamerie.butter
|
697
|
+
# => { name: "Beurre d'Isigny", type: "demi-sel" }
|
698
|
+
|
699
|
+
# Generates information about top butter producers.
|
700
|
+
Faussaire::Creamerie.butter_producers
|
701
|
+
# => "N°7: Turquie (215,431 t)"
|
702
|
+
|
703
|
+
# Generates a random cheese, linking it to a region and an appellation.
|
704
|
+
Faussaire::Creamerie.cheese
|
705
|
+
# => { type: "AOP", name: "Camembert de Normandie", region: "Normandie" }
|
706
|
+
```
|
707
|
+
</details>
|
708
|
+
|
709
|
+
<details>
|
710
|
+
<summary><strong>Faussaire::Gardinerie</strong></summary>
|
711
|
+
|
712
|
+
The `Faussaire::Gardinerie` module is organic-certified! Vegetables, fruits, and various plants, with a particular focus on their relevance in France.
|
713
|
+
|
714
|
+
```ruby
|
715
|
+
# Generates a random vegetable name and its ideal consumption month in France.
|
716
|
+
Faussaire::Gardinerie.vegetable
|
717
|
+
# => "Carotte (Mars)"
|
718
|
+
|
719
|
+
# Generates a random fruit name and its ideal consumption month in France.
|
720
|
+
Faussaire::Gardinerie.fruit
|
721
|
+
# => "Pomme (Janvier)"
|
722
|
+
|
723
|
+
# Generates a harmful weed name (harmful for agriculture).
|
724
|
+
Faussaire::Gardinerie.rival_plant
|
725
|
+
# => "Orobanche minor de la famille des Orobanchaceae, parasite sur légumineuses, tabac, carottes, cultures diverses, trÚs répandus dans les régions tempérées"
|
726
|
+
|
727
|
+
|
728
|
+
|
729
|
+
# Generates a random carnivorous plant name.
|
730
|
+
Faussaire::Gardinerie.bang_bang_plant
|
731
|
+
# => "Drosera : piĂšges Ă mucilage avec feuilles et poils qui s'enroulent autour des proies"
|
732
|
+
|
733
|
+
# Generates a random psychotropic plant name.
|
734
|
+
Faussaire::Gardinerie.very_naughty_plant
|
735
|
+
# => "Nymphaea caerulea : Lotus bleu dâĂgypte, plante aux effets enivrants et psychoactifs"
|
736
|
+
```
|
737
|
+
</details>
|
738
|
+
|
739
|
+
<details>
|
740
|
+
<summary><strong>Faussaire::Music</strong></summary>
|
741
|
+
|
742
|
+
The `Faussaire::Music` module generates data related to different music genres, focusing on house, French rap, and French variété songs.
|
743
|
+
|
744
|
+
```ruby
|
745
|
+
# Generates a random house song.
|
746
|
+
Faussaire::Music.house
|
747
|
+
# => "House is a feeling - LA Riots"
|
748
|
+
|
749
|
+
# Generates a random French rap song.
|
750
|
+
Faussaire::Music.rap
|
751
|
+
# => "Chez nous - Sultan"
|
752
|
+
|
753
|
+
# Generates a random French variété song.
|
754
|
+
Faussaire::Music.variete
|
755
|
+
# => "Mourir sur scĂšne - Dalida"
|
756
|
+
```
|
757
|
+
</details>
|
758
|
+
|
759
|
+
<details>
|
760
|
+
<summary><strong>Faussaire::Name</strong></summary>
|
761
|
+
|
762
|
+
The `Faussaire::Name` module generates realistic French names, which can be used for character creation, database seeding, or any application requiring random name generation.
|
763
|
+
|
764
|
+
```ruby
|
765
|
+
# Generates a random female first name.
|
766
|
+
Faussaire::Name.female_first_name
|
767
|
+
# => "Harmonie"
|
768
|
+
|
769
|
+
# Generates a random male first name.
|
770
|
+
Faussaire::Name.male_first_name
|
771
|
+
# => "Jean-Claude"
|
772
|
+
|
773
|
+
# Generates a random family name.
|
774
|
+
Faussaire::Name.family_name
|
775
|
+
# => "Boyer"
|
776
|
+
|
777
|
+
# Generates a full name by combining a random first name (female or male) with a family name.
|
778
|
+
Faussaire::Name.name
|
779
|
+
# => "Jeanne Gaillard"
|
780
|
+
```
|
781
|
+
</details>
|
782
|
+
|
783
|
+
<details>
|
784
|
+
<summary><strong>Faussaire::Tv</strong></summary>
|
785
|
+
|
786
|
+
The `Faussaire::Tv` module generates fake data related to television, including show titles, influencers, famous couples, TV channels, and specific details related to the Cannes Film Festival.
|
787
|
+
|
788
|
+
```ruby
|
789
|
+
# Generates a random television show title.
|
790
|
+
Faussaire::Tv.show
|
791
|
+
# => "Marjolaine et les Millionnaires"
|
792
|
+
|
793
|
+
# Generates a random famous influencer name.
|
794
|
+
Faussaire::Tv.influencer
|
795
|
+
# => "Le Vrai Bouseuh (Romain Goisbeau)"
|
796
|
+
|
797
|
+
# Generates a random famous television couple.
|
798
|
+
Faussaire::Tv.famous_couples
|
799
|
+
# => "J.Lo et Diddy (2000)"
|
800
|
+
|
801
|
+
# Generates a random TV channel name.
|
802
|
+
Faussaire::Tv.channel
|
803
|
+
# => "Canal+"
|
804
|
+
|
805
|
+
# Returns the total number of films presented at the festival.
|
806
|
+
Faussaire::Tv::FestivalCannes.total_films
|
807
|
+
# => 1234
|
808
|
+
|
809
|
+
# Generates a random country among the most represented at the festival.
|
810
|
+
Faussaire::Tv::FestivalCannes.most_represented_countries
|
811
|
+
# => "161 (Royaume-Uni)"
|
812
|
+
|
813
|
+
# Generates a random country among those that have won awards.
|
814
|
+
Faussaire::Tv::FestivalCannes.awarded_countries
|
815
|
+
# => "GrÚce (total de 1 récompense)"
|
816
|
+
|
817
|
+
# Generates a director who has won the Palme d'Or twice.
|
818
|
+
Faussaire::Tv::FestivalCannes.directors_with_two_palms
|
819
|
+
# => "Ken Loach (Le vent se lĂšve, Moi, Daniel Blake)"
|
820
|
+
|
821
|
+
# Generates a nominee who has received multiple awards.
|
822
|
+
Faussaire::Tv::FestivalCannes.multiple_awardises
|
823
|
+
# => "Dean Stockwell: Le GĂ©nie du mal, Long voyage vers la nuit"
|
824
|
+
|
825
|
+
# Generates a Palme d'Or winner.
|
826
|
+
Faussaire::Tv::FestivalCannes.winners
|
827
|
+
# => "Les Meilleures Intentions (Den Goda viljan) par Bille August en provenance de la SuĂšde [1992]"
|
828
|
+
|
829
|
+
# Returns a top box office figure from the festival's films.
|
830
|
+
Faussaire::Tv::FestivalCannes.box_office
|
831
|
+
# => "Apocalypse Now (1979) : 4 537 000 entrées"
|
832
|
+
```
|
833
|
+
</details>
|
834
|
+
|
835
|
+
<details>
|
836
|
+
<summary><strong>Faussaire::Wine</strong></summary>
|
837
|
+
|
838
|
+
The `Faussaire::Wine` module generates data related to French wines (wine names with their current appellation, types, bottles, regions, prices, and liquors).
|
839
|
+
|
840
|
+
```ruby
|
841
|
+
# Generates a random wine name.
|
842
|
+
Faussaire::Wine.name
|
843
|
+
# => "AOC Collioure"
|
844
|
+
|
845
|
+
# Generates a random wine type or style.
|
846
|
+
Faussaire::Wine.type
|
847
|
+
# => "Vin tranquille blanc (pression inférieure à 0,5 bar à 20°C)"
|
848
|
+
|
849
|
+
# Generates a random wine bottle type.
|
850
|
+
Faussaire::Wine.bottle_type
|
851
|
+
# => "Bouteille Clavelien (bouteille en verre à col court, contenance de 0,62 L, corps cylindrique surmonté de larges épaules)"
|
852
|
+
|
853
|
+
# Generates a random wine region.
|
854
|
+
Faussaire::Wine.region
|
855
|
+
# => "Vignoble de Corse (120M⏠en ventes, 2.45âŹ/bt en prix moyen, 1.71âŹ/mÂČ en rentabilitĂ©)"
|
856
|
+
|
857
|
+
# Generates a random wine price with 99 cents and the Euro (âŹ) symbol.
|
858
|
+
Faussaire::Wine.price
|
859
|
+
# => "39.99âŹ"
|
860
|
+
|
861
|
+
# Generates a random liquor name.
|
862
|
+
Faussaire::Wine.licocorico
|
863
|
+
# => "AOC Grande Champagne (Eau de vie de vin) [Cognac]"
|
864
|
+
```
|
865
|
+
</details>
|
866
|
+
|
867
|
+
## Want to contribute?
|
868
|
+
|
869
|
+
To set up the development environment for **Faussaire**:
|
870
|
+
|
871
|
+
1. Clone the repository:
|
872
|
+
```bash
|
873
|
+
git clone https://github.com/ikramagix/faussaire.git
|
874
|
+
```
|
875
|
+
2. Navigate to the project directory:
|
876
|
+
```bash
|
877
|
+
cd faussaire
|
878
|
+
```
|
879
|
+
3. Install dependencies:
|
880
|
+
```bash
|
881
|
+
bin/setup
|
882
|
+
```
|
883
|
+
4. Run the tests:
|
884
|
+
```bash
|
885
|
+
rake spec
|
886
|
+
```
|
887
|
+
|
888
|
+
## License
|
889
|
+
|
890
|
+
The **Faussaire** gem is available under the [MIT License](LICENSE.txt), which allows you to freely use, modify, and distribute the software contained within this gem.
|
891
|
+
|
892
|
+
> [!IMPORTANT]
|
893
|
+
> The MIT License only applies to the software itself. Restrictions apply to the dataset used in this project (_fr.yml_). Be sure to review the specific terms related to data usage.
|
894
|
+
|
895
|
+
## Is something missing?
|
896
|
+
|
897
|
+
All contributions to **Faussaire** are welcome and will always be!
|
898
|
+
|
899
|
+
Feel free to participate by submitting your pull requests:
|
900
|
+
|
901
|
+
- **Issues:** Provide as many details as possible about the problem encountered and how to reproduce it.
|
902
|
+
- **Pull Requests:** Check out [CONTRIBUTING.md](https://github.com/ikramagix/faussaire/blob/main/CONTRIBUTING.md).
|
903
|
+
|
904
|
+
Merci beaucoup, fellow faussaire! đâ
|