Need help with mimesis?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

lk-geimfari
3.3K Stars 273 Forks MIT License 2.0K Commits 8 Opened issues

Description

Mimesis is a high-performance fake data generator for Python, which provides data for a variety of purposes in a variety of languages.

Services available

!
?

Need anything else?

Contributors list

# 2,530
Django
dummy
python-...
Lisp
1392 commits
# 749
GitHub
rust-la...
wechat-...
query-l...
56 commits
# 145,105
C
Shell
Python
dummy
28 commits
# 185,389
Python
dummy
synthet...
19 commits
# 1,842
mypy
phoenix...
python3
github-...
19 commits
# 220,067
Python
dummy
synthet...
12 commits
# 63,505
python-...
urban-p...
python-...
hanzi
7 commits
# 2,957
query-l...
python-...
mvvm-fr...
wechat-...
7 commits
# 272,478
Python
dummy
synthet...
6 commits
# 2,435
civic-t...
Qt
python-...
prose
5 commits
# 6,798
prose
testing...
Racket
duplica...
5 commits
# 307,974
Python
dummy
pypi
synthet...
4 commits
# 253,317
Shell
Sass
dummy
python3
4 commits
# 80,212
Python
Shell
HTML
dummy
3 commits
# 339,737
Crystal
Visual ...
Shell
Elixir
3 commits
# 330,991
Django
HTML
CSS
Shell
3 commits
# 340,437
Python
dummy
synthet...
3 commits
# 265,172
Python
dummy
synthet...
2 commits
# 44,386
maltego
Atom
Socket....
cpp17
2 commits
# 375,864
CSS
HTML
dummy
synthet...
2 commits

Mimesis - Fake Data Generator

|

.. image:: https://raw.githubusercontent.com/lk-geimfari/mimesis/master/.github/images/readme-logo.png :target: https://github.com/lk-geimfari/mimesis

|

Description

.. image:: https://github.com/lk-geimfari/mimesis/workflows/test/badge.svg?branch=master :target: https://github.com/lk-geimfari/mimesis/actions :alt: Github Actions Test

.. image:: https://readthedocs.org/projects/mimesis/badge/?version=latest :target: https://mimesis.name/ :alt: Documentation Status

.. image:: https://codecov.io/gh/lk-geimfari/mimesis/branch/master/graph/badge.svg :target: https://codecov.io/gh/lk-geimfari/mimesis :alt: Code Coverage

.. image:: https://www.codefactor.io/repository/github/lk-geimfari/mimesis/badge :target: https://www.codefactor.io/repository/github/lk-geimfari/mimesis :alt: CodeFactor

.. image:: https://img.shields.io/pypi/v/mimesis?color=bright-green :target: https://pypi.org/project/mimesis/ :alt: PyPi Version

.. image:: https://img.shields.io/pypi/dm/mimesis
:target: https://pypi.org/project/mimesis/ :alt: PyPI - Downloads

.. image:: https://img.shields.io/badge/python-3.6+-brightgreen.svg :target: https://badge.fury.io/py/mimesis :alt: Python version

Mimesis is a high-performance fake data generator for Python, which provides data for a variety of purposes in a variety of languages. The fake data could be used to populate a testing database, create fake API endpoints, create JSON and XML files of arbitrary structure, anonymize data taken from production and etc.

Installation

To install mimesis, simply use pip:

.. code:: text

~ ⟩ pip install mimesis

Supported Features

  • Easy: Designed to be easy to use and learn.
  • Multilingual: Supports data for
    a lot of languages 
    _.
  • Performance: The
    fastest 
    _ data generator available for Python.
  • Data variety: Supports
    a lot of data providers 
    _ for a variety of purposes.
  • Country-specific data providers: Provides data specific only for
    some countries 
    _.
  • Extensibility: You can create your own data providers and use them with Mimesis.
  • Generic data provider: The
    simplified 
    _ access to all the providers from a single object.
  • Zero hard dependencies: Does not require any modules other than the Python standard library.
  • Schema-based generators: Provides an easy mechanism to generate data by the schema of any complexity.

Documentation

You can find the complete documentation on the

Read the Docs 
_.

It is divided into several sections:

  • Foreword 
    _
  • Getting Started 
    _
  • Tips and Tricks 
    _
  • API Reference 
    _
  • Contributing 
    _
  • Changelog 
    _

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

Usage

This library is really easy to use and everything you need is just import an object which represents a type of data you need (we call such object a Provider).

In example below we import provider

Person 
_, which represents data related to personal information, such as name, surname, email and etc:

.. code:: python

>>> from mimesis import Person
>>> person = Person('en')

>>> person.full_name() 'Brande Sears'

>>> person.email(domains=['mimesis.name']) '[email protected]'

>>> person.email(domains=['mimesis.name'], unique=True) '[email protected]'

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

More about the other providers you can read in our

documentation
_.

.. documentation: https://mimesis.name/gettingstarted.html#providers

Locales

Mimesis currently includes support for 34 different

locales
_. You can specify a locale when creating providers and they will return data that is appropriate for the language or country associated with that locale.

Let's take a look how it works:

.. code:: python

>>> from mimesis import Person
>>> from mimesis.enums import Gender

>>> de = Person('de') >>> en = Person('en')

>>> de.full_name(gender=Gender.FEMALE) 'Sabrina Gutermuth'

>>> en.full_name(gender=Gender.MALE) 'Layne Gallagher'

.. locales: https://mimesis.name/gettingstarted.html#locales

Providers

Mimesis support over twenty different data providers available, which can produce data related to people, food, computer hardware, transportation, addresses, internet and more.

See

API Reference 
_ for more info.

How to Contribute

  1. Take a look at
    contributing guidelines
    _.
  2. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug.
  3. Fork the repository on GitHub to start making your changes to the your_branch branch.
  4. Add yourself to the list of
    contributors
    _.
  5. Send a pull request and bug the maintainer until it gets merged and published.

.. _contributing guidelines: https://github.com/lk-geimfari/mimesis/blob/master/CONTRIBUTING.rst .. _contributors: https://github.com/lk-geimfari/mimesis/blob/master/CONTRIBUTORS.rst

Useful links

I have a Telegram channel where I daily post news, announces and all the open-source goodies I found, so subscribe:

@the_art_of_development 
_.

Thanks

Supported by

JetBrains 
_.

Disclaimer

The authors of

Mimesis
do not assume any responsibility for how you use it or how you use data generated with it. This library was designed with good intentions to make testing easier. Do not use the data generated with Mimesis for illegal purposes.

License

Mimesis is licensed under the MIT License. See

LICENSE
_ for more information.

.. _LICENSE: https://github.com/lk-geimfari/mimesis/blob/master/LICENSE

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.