Skip to content

Mimesis is a robust data generator for Python that can produce a wide range of fake data in multiple languages.

License

Notifications You must be signed in to change notification settings

lk-geimfari/mimesis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7ebeb32 · Feb 6, 2025
Feb 6, 2025
Sep 23, 2024
Nov 26, 2024
Jan 7, 2024
Nov 26, 2024
Nov 25, 2021
Jan 17, 2022
Jan 7, 2024
Sep 13, 2024
Jan 21, 2019
Jan 28, 2024
Sep 21, 2024
Jan 7, 2024
May 4, 2023
Nov 30, 2024
Jun 2, 2024
Jan 14, 2022
Nov 26, 2024
Jul 13, 2020
Nov 26, 2024

Repository files navigation

Mimesis

Mimesis: The Fake Data Generator

Test Coverage Package version Package version Supported Python versions


Documentation: https://mimesis.name/


Mimesis (/mɪˈmiːsɪs) is a robust data generator for Python that can produce a wide range of fake data in various languages.

The key features are:

  • Multilingual: Supports 46 different locales.
  • Extensibility: Supports custom data providers and custom field handlers.
  • Ease of use: Features a simple design and clear documentation for straightforward data generation.
  • Performance: Widely recognized as the fastest data generator among Python solutions.
  • Data variety: Includes various data providers designed for different use cases.
  • Schema-based generators: Offers schema-based data generators to effortlessly produce data of any complexity.
  • Intuitive: Great editor support. Fully typed, thus autocompletion almost everywhere.

Installation

Important

To work with Mimesis on Python versions 3.8 and 3.9, the final compatible version is Mimesis 11.1.0. Install this specific version to ensure compatibility.

To install mimesis, use pip:

~ pip install mimesis

Documentation

You can find the complete documentation on the Read the Docs.

It is divided into several sections:

You can improve it by sending pull requests to this repository.

Usage

The library is exceptionally user-friendly, and it only requires you to import a Data Provider object that corresponds to the desired data type.

For instance, the Person provider can be imported to access personal information, including name, surname, email, and other related fields:

from mimesis import Person
from mimesis.locales import Locale

person = Person(Locale.EN)

person.full_name()
# Output: 'Brande Sears'

person.email(domains=['example.com'])
# Output: 'roccelline1878@example.com'

person.email(domains=['mimesis.name'], unique=True)
# Output: 'f272a05d39ec46fdac5be4ac7be45f3f@mimesis.name'

person.telephone(mask='1-4##-8##-5##3')
# Output: '1-436-896-5213'

License

Mimesis is licensed under the MIT License. See LICENSE for more information.