Giter VIP home page Giter VIP logo

mimesis's Introduction

Mimesis: The Fake Data Generator

image

Description

Github Actions Test

Documentation Status

Code Coverage

PyPi Version

PyPI - Downloads

Mimesis (/mɪˈmiːsɪs) is a robust data generator for Python that can produce a wide range of fake data in various languages. This tool is useful for populating testing databases, creating fake API endpoints, filling pandas DataFrames, generating JSON and XML files with custom structures, and anonymizing production data, among other purposes.

Installation

To install mimesis, simply use pip:

pip install mimesis

Python compatibility

Mimesis is compatible with Python, including PyPy, version 3.8 or higher. The Mimesis 4.1.3 is the last release that accommodates Python 3.6 and 3.7.

To prevent unintended upgrades, it is highly advisable to always specify the version of mimesis that you are using by pinning it.

Supported Features

  • Easy: Mimesis offers a simple design and clear documentation for easy data generation.
  • Multilingual: Mimesis can generate data in multiple languages.
  • Performance: Widely recognized as the fastest data generator among Python solutions.
  • Data variety: Mimesis includes various data providers for names, addresses, phone numbers, email addresses, dates, times, and more, catering to different use cases.
  • Country-specific data providers: Mimesis supports country-specific data providers for generating region-specific data.
  • Extensibility: Developers can extend Mimesis by creating and integrating their own data providers.
  • Generic data provider: Mimesis provides a single object that grants easy access to all available data providers in the library.
  • Zero hard dependencies: Mimesis has no hard dependencies, eliminating the need for additional third-party libraries.
  • Schema-based generators: Mimesis offers schema-based data generators to effortlessly produce data of any complexity.

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()
'Brande Sears'

>>> person.email(domains=['example.com'])
'[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.

Locales

Mimesis presently encompasses 34 distinct locales, enabling users to specify the desired region and language when creating providers.

Here's how it operates practically:

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

>>> person_de = Person(locale=Locale.DE)
>>> person_en = Person(locale=Locale.EN)

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

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

Providers

Mimesis provides more than twenty data providers which can generate a broad range of data related to food, transportation, computer hardware, people, internet, addresses, and more.

See API Reference and Data Providers 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.

Disclaimer

The creators of mimesis are not responsible for how you use the library or the data it generates. Mimesis is meant for testing purposes and should not be used for illegal activities.

License

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

mimesis's People

Contributors

aprasanna avatar auyer avatar axce1 avatar battleroid avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar destag avatar duckyou avatar eumiro avatar hoefling avatar jasonwaiting-dev avatar jlwt90 avatar jorisdevrede avatar jwilk avatar lk-geimfari avatar marcosvafg avatar mipaaa avatar ngnpope avatar paulwaltersdev avatar pyup-bot avatar sinecode avatar sobolevn avatar uvegla avatar valerievich avatar vlangf avatar wikkiewikkie avatar willsthompson avatar wooza avatar yn-coder avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.