All Projects β†’ lk-geimfari β†’ Mimesis

lk-geimfari / Mimesis

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

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Mimesis

Bogus
πŸ“‡ A simple and sane fake data generator for C#, F#, and VB.NET. Based on and ported from the famed faker.js.
Stars: ✭ 5,083 (+47.8%)
Mutual labels:  fake, faker, data, generator
Jaymock
Minimal fake JSON test data generator.
Stars: ✭ 28 (-99.19%)
Mutual labels:  json, fake, data, generator
Fakerator
Random fake data generator with localization for Javascript in Node.js and browser
Stars: ✭ 91 (-97.35%)
Mutual labels:  fake, faker, generator, mock
Http Fake Backend
Build a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.
Stars: ✭ 253 (-92.64%)
Mutual labels:  json, fake, data, mock
Generator Http Fake Backend
Yeoman generator for building a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.
Stars: ✭ 49 (-98.58%)
Mutual labels:  json, fake, data, mock
Mockaco
🐡 HTTP mock server, useful to stub services and simulate dynamic API responses, leveraging ASP.NET Core features, built-in fake data generation and pure C# scripting
Stars: ✭ 213 (-93.81%)
Mutual labels:  mock, fake, faker, api-mock
Faker
Faker is a pure Elixir library for generating fake data.
Stars: ✭ 673 (-80.43%)
Mutual labels:  faker, data, generator
Faker
Provides fake data to your Android apps :)
Stars: ✭ 234 (-93.2%)
Mutual labels:  faker, data, mock
Gofakeit
Random fake data generator written in go
Stars: ✭ 2,193 (-36.23%)
Mutual labels:  fake, data, generator
Openapi Sampler
πŸ”  Tool for generation samples based on OpenAPI(fka Swagger) payload/response schema
Stars: ✭ 83 (-97.59%)
Mutual labels:  schema, fake, mock
Vue Form Json Schema
Create forms using JSON schema. Bring your components!
Stars: ✭ 253 (-92.64%)
Mutual labels:  json, schema, generator
mockingbird
🐦 Decorator Powered TypeScript Library for Creating Mocks
Stars: ✭ 70 (-97.96%)
Mutual labels:  mock, fixtures, faker
falso
All the Fake Data for All Your Real Needs πŸ™‚
Stars: ✭ 877 (-74.5%)
Mutual labels:  mock, data, fake
faker-buzzword-job-titles
πŸ‘” A job title generator for faker based on Buzzwords.
Stars: ✭ 14 (-99.59%)
Mutual labels:  fake, faker
xrm-mock
πŸ“š A fake implementation of the Xrm object model. Written in TypeScript against @types/xrm definitions.
Stars: ✭ 64 (-98.14%)
Mutual labels:  mock, fake
genstar
Generation of Synthetic Populations Library
Stars: ✭ 17 (-99.51%)
Mutual labels:  datascience, synthetic-data
dummy-products-api
An api to fetch dummy e-commerce product πŸ‘• πŸ‘— πŸ‘– πŸ‘š JSON data with placeholder images.
Stars: ✭ 102 (-97.03%)
Mutual labels:  fake, dummy
better-mock
Forked from Mockjs, Generate random data & Intercept ajax request. Support miniprogram.
Stars: ✭ 140 (-95.93%)
Mutual labels:  mock, fake
Stubmatic
Mock HTTP calls without coding. Designed specially for testing and testers.
Stars: ✭ 118 (-96.57%)
Mutual labels:  mock, fake
minifaker
A lightweight alternative to faker.js
Stars: ✭ 64 (-98.14%)
Mutual labels:  fake, faker

Mimesis: The Fake Data Generator


https://raw.githubusercontent.com/lk-geimfari/mimesis/master/.github/images/octopus-no-retina-sm.png

Description

Github Actions Test Documentation Status Code Coverage CodeFactor PyPi Version PyPI - Downloads Python version

Mimesis (/mΙͺˈmiːsΙͺs, Ancient Greek: μίμησις, mΔ«mΔ“sis) 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:

~ ⟩ pip install mimesis

Python compatibility

Mimesis 5.x.x supports Python 3.8, 3.9, and 3.10.

The Mimesis 4.1.3 is the last to support Python 3.6 and 3.7.

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:

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 the example below we import provider Person, which represents data related to personal information, such as name, surname, email and etc:

>>> 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 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:

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

>>> de = Person(locale=Locale.DE)
>>> en = Person(locale=Locale.EN)

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

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

Providers

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

You can generate a lot of extremely detailed data:

>>> from mimesis import Internet
>>> from mimesis.enums import URLScheme
>>> internet = Internet()
>>> internet.url(scheme=URLScheme.WSS, subdomains=["chat"])
'wss://chat.system.io/'

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.

Useful links

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

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].