lk-geimfari
mimesis
Python

Mimesis is a fast Python library for generating fake data in multiple languages.

Last updated Jul 9, 2026
4.8k
Stars
359
Forks
15
Issues
+3
Stars/day
Attention Score
83
Language breakdown
Python 99.8%
Makefile 0.1%
Shell 0.1%
โ–ธ Files click to expand
README

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.
  • Relational data: Supports generating relational data with references between schemas for complex data structures.
  • Intuitive: Great editor support. Fully typed, thus autocompletion almost everywhere.

Installation

[!WARNING]
In Mimesis 20.0.0, Iโ€™m going to completely rework the current schema-based generation implementation. There will be no backward compatibility with the existing implementation.
[!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.
[!WARNING]
Starting from version 19.0.0, Mimesis has dropped support for builtin providers.

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.

ยฉ 2026 GitRepoTrend ยท lk-geimfari/mimesis ยท Updated daily from GitHub