Skip to main content

No project description provided

Project description

DATAMIMIC Community Edition ๐ŸŒŸ

Maintainability Rating Reliability Rating Security Rating Coverage License: MIT Python Version GitHub Stars GitHub Forks PyPI version Downloads

Introduction

Welcome to DATAMIMIC, the Model-Driven and AI-powered platform that revolutionizes test data generation! By leveraging advanced AI and model-driven technologies, DATAMIMIC enables developers and testers to create realistic, scalable, and privacy-compliant test data with ease.

Watch the video


DATAMIMIC Feature Overview ๐ŸŽฏ

Core Features ๐Ÿ”ต

๐Ÿง  Model-Driven Generation

  • Create sophisticated data models for consistent test data generation
  • Define complex relationships between entities
  • Support for nested and hierarchical data structures

๐Ÿ“Š Data Types & Integration

  • Basic Data Types Support
    • All standard primitive types
    • Complex data structures
    • Custom data type definitions
  • Core Database Integration
    • RDBMS support (PostgreSQL, MySQL, Oracle)
    • MongoDB integration
    • Basic import/export functionality

๐Ÿ›ก๏ธ Data Privacy & Compliance

  • GDPR-compliant data anonymization
  • Basic pseudonymization capabilities
  • Data masking for sensitive information
  • Configurable privacy rules

โšก Core Capabilities

  • High Performance Engine
    • Optimized for large datasets
    • Parallel processing support
    • Memory-efficient operations
  • Python Integration
    • Native Python API
    • Seamless dependency management
    • Python script extensions
  • Basic Extensibility
    • Custom generator support
    • Plugin architecture
    • Basic scripting capabilities

Enterprise Features ๐ŸŸฃ

๐Ÿง  AI-Powered Generation

Advanced AI capabilities for realistic data creation

  • GAN-based Synthesis
    • Realistic data patterns
    • Learning from existing datasets
    • Pattern replication
  • LLM Integration
    • Natural language content
    • Context-aware generation
    • Semantic consistency
  • Automatic Modeling
    • Schema inference
    • Pattern detection
    • Model optimization

๐Ÿ”— Advanced Integrations

Enterprise-grade system integration capabilities

  • Streaming Support
    • Kafka integration
    • Real-time data generation
    • Stream processing
  • Enterprise Formats
    • EDI processing
    • Advanced XSD handling
    • Custom format support
  • Advanced Connectors
    • Enterprise systems
    • Cloud platforms
    • Legacy systems

๐Ÿ›ก๏ธ Enhanced Privacy Features

Advanced data protection and compliance

  • Advanced Anonymization
    • Context-aware masking
    • Reversible anonymization
    • Custom privacy rules
  • Compliance Tools
    • Audit logging
    • Compliance reporting
    • Policy enforcement
  • Enterprise Security
    • Role-based access
    • Encryption support
    • Security audit trails

๐Ÿ“ˆ Advanced Data Validation

Comprehensive data quality assurance

  • Validation Framework
    • Custom rule engines
    • Complex validation logic
    • Cross-field validation

Why Use DATAMIMIC?

Traditional test data generation can be time-consuming and may compromise data privacy. DATAMIMIC addresses these challenges by:

  • Reducing Time-to-Market: Quickly generate test data without manual intervention.
  • Enhancing Test Coverage: Simulate diverse data scenarios for comprehensive testing.
  • Ensuring Compliance: Maintain data privacy and comply with legal regulations.
  • Improving Data Quality: Generate realistic data that mirrors production environments.

Installation

Prerequisites

  • Operating System: Windows, macOS, or Linux
  • Python: Version 3.10 or higher
  • Optional: uv Package Manager for development setup GitHub

User Installation

The simplest way to get started with DATAMIMIC is through pip:

pip install datamimic-ce

Verify the installation:

datamimic --version

Developer Installation

For contributors and developers who want to work with the source code:

  1. Install uv Package Manager:

    pip install uv
    
  2. Clone and set up the repository:

    git clone https://github.com/rapiddweller/datamimic.git
    cd datamimic
    uv sync
    

Usage Guide

Basic Usage

  1. Create a new data generation project:

    datamimic init my-project
    cd my-project
    
  2. Configure your data model in datamimic.xml:

    <setup>
        <generate name="datamimic_user_list" count="100" target="CSV,JSON">
            <variable name="person" entity="Person(min_age=18, max_age=90, female_quota=0.5)"/>
            <key name="id" generator="IncrementGenerator"/>
            <key name="first_name" script="person.given_name"/>
            <key name="last_name" script="person.family_name"/>
            <key name="gender" script="person.gender"/>
            <key name="birth_date" script="person.birthdate" converter="DateFormat('%d.%m.%Y')"/>
            <key name="email" script="person.family_name + '@' + person.given_name + '.de'"/>
            <key name="ce_user" values="True, False"/>
            <key name="ee_user" values="True, False"/>
            <key name="datamimic_lover" constant="DEFINITELY"/>
        </generate>
    </setup>
    
  3. Generate data:

    datamimic run datamimic.xml
    
  4. Access the generated data in the output directory.

    json export:

    [
    {"id": 1, "first_name": "Mary", "last_name": "Mcgowan", "gender": "female", "birth_date": "1946-05-15T00:00:00", "email": "Mcgowan@Mary.de", "ce_user": false, "ee_user": true, "datamimic_lover": "DEFINITELY"},
    {"id": 2, "first_name": "Gabrielle", "last_name": "Malone", "gender": "female", "birth_date": "1989-11-27T00:00:00", "email": "Malone@Gabrielle.de", "ce_user": false, "ee_user": true, "datamimic_lover": "DEFINITELY"},
    {"id": 4, "first_name": "Margaret", "last_name": "Torres", "gender": "female", "birth_date": "2006-07-13T00:00:00", "email": "Torres@Margaret.de", "ce_user": false, "ee_user": false, "datamimic_lover": "DEFINITELY"},
    {"id": 5, "first_name": "Monica", "last_name": "Meyers", "gender": "female", "birth_date": "1983-07-22T00:00:00", "email": "Meyers@Monica.de", "ce_user": true, "ee_user": false, "datamimic_lover": "DEFINITELY"},
    {"id": 6, "first_name": "Jason", "last_name": "Davis", "gender": "male", "birth_date": "1941-07-05T00:00:00", "email": "Davis@Jason.de", "ce_user": true, "ee_user": false, "datamimic_lover": "DEFINITELY"},
    {"...":  "..."},
    {"id": 100, "first_name": "Jared", "last_name": "Rivas", "gender": "male", "birth_date": "1975-03-16T00:00:00", "email": "Rivas@Jared.de", "ce_user": true, "ee_user": true, "datamimic_lover": "DEFINITELY"}
    ]
    

    csv export:

    id|first_name|last_name|gender|birth_date|email|ce_user|ee_user|datamimic_lover
    1|Mary|Mcgowan|female|1946-05-15 00:00:00|Mcgowan@Mary.de|False|True|DEFINITELY
    2|Gabrielle|Malone|female|1989-11-27 00:00:00|Malone@Gabrielle.de|False|True|DEFINITELY
    3|Antonio|Davis|male|2005-05-12 00:00:00|Davis@Antonio.de|False|True|DEFINITELY
    4|Margaret|Torres|female|2006-07-13 00:00:00|Torres@Margaret.de|False|False|DEFINITELY
    5|Monica|Meyers|female|1983-07-22 00:00:00|Meyers@Monica.de|True|False|DEFINITELY
    ...
    100|Jason|Davis|male|1941-07-05 00:00:00|Davis@Jason.de|True|False|DEFINITELY
    

Advanced Features

DATAMIMIC supports various advanced features:

  • Custom Generators: Create your own data generators
  • Data Relationships: Define complex relationships between entities
  • Import/Export Formats: Support for JSON, XML, CSV, RDBMS and MongoDB
  • Import/Export Formats ( only EE ): Kafka, EDI, XSD and more
  • Data Anonymization: Anonymize data to comply with privacy regulations
  • Data Validation: Define and enforce data validation rules
  • Scripting: Extend functionality using Python scripts
  • Database Integration: Connect to databases for seamless data generation
  • Model-Driven Generation: Utilize models to generate realistic data
  • Validation Rules: Define and enforce data validation rules
  • Scripting: Extend functionality using Python scripts

Examples and Demos

Explore our demo collection:

# List available demos
datamimic demo list

# Run a specific demo
datamimic demo create demo-model
datamimic run ./demo-model/datamimic.xml

Key demos include:

  • Basic entity generation
  • Complex relationships
  • Database integration
  • Custom generator creation
  • Privacy compliance examples

Find more examples in the datamimic_ce/demos directory.


Contributing

We โค๏ธ contributions! Here's how you can help:

  • Code Contributions: Submit pull requests for new features or bug fixes.
  • Documentation: Improve existing docs or help with translations.
  • Community Engagement: Join discussions and support other users.

๐Ÿ“œ DATAMIMIC Licensing Options

๐ŸŒŸ Community Edition

Open Source Freedom for Everyone

โœจ Key Benefits

  • ๐Ÿ”“ MIT License: Maximum freedom for innovation
  • ๐Ÿ’ผ Commercial Ready: Use freely in commercial projects
  • ๐Ÿ”„ Modification Rights: Full source code access and modification rights
  • ๐ŸŒ No Restrictions: Deploy anywhere, anytime

๐ŸŽ What's Included

  • ๐Ÿ“ฆ Core Features

    • Model-driven data generation
    • Basic data types & integrations
    • GDPR compliance tools
  • ๐Ÿ‘ฅ Community Support

    • Active GitHub community
    • Public issue tracking
    • Community discussions
    • Regular updates

๐Ÿ’ซ Perfect For

  • Individual developers
  • Startups & small teams
  • Open source projects
  • Learning & evaluation
  • POC development

โญ Enterprise Edition

Professional Power for Business Success

๐Ÿš€ Premium Benefits

  • ๐Ÿ“‹ Commercial License: Enterprise-grade flexibility
  • ๐Ÿ” Advanced Features: Full suite of professional tools
  • ๐ŸŽฏ Priority Support: Direct access to expert team
  • ๐Ÿ› ๏ธ Custom Solutions: Tailored to your needs

๐Ÿ’Ž Premium Features

  • ๐Ÿค– AI Capabilities

    • GAN-based synthesis
    • LLM integration
    • Automated modeling
  • ๐Ÿ”— Enterprise Integration

    • Advanced connectors
    • Kafka streaming
    • EDI support
  • ๐Ÿ›ก๏ธ Enhanced Security

    • Advanced privacy features
    • Compliance reporting
    • Audit trails

๐ŸŽฏ Ideal For

  • Large enterprises
  • Financial institutions
  • Healthcare organizations
  • Government agencies
  • High-compliance industries

๐Ÿ“ž Get Started

Ready to unlock the full potential of DATAMIMIC?

Contact Our Team:


๐Ÿค Compare Editions

Feature Community Enterprise
Base Features โœ… โœ…
Source Code Access โœ… โœ…
Commercial Use โœ… โœ…
AI Features โŒ โœ…
Priority Support โŒ โœ…
Enterprise Integrations โŒ โœ…
SLA Support โŒ โœ…
Custom Development โŒ โœ…

"Empower your data generation journey with the right DATAMIMIC edition for your needs"


Support

Need help or have questions? We're here for you!


Connect with Us

Stay updated and connect with our community!


Acknowledgments

A big thank you to all our contributors! Your efforts make DATAMIMIC possible.


Don't forget to โญ star and ๐Ÿ‘€ watch this repository to stay updated!


Legal Notices

For detailed licensing information, please see the LICENSE file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

datamimic_ce-1.1.1.tar.gz (12.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

datamimic_ce-1.1.1-py3-none-any.whl (12.9 MB view details)

Uploaded Python 3

File details

Details for the file datamimic_ce-1.1.1.tar.gz.

File metadata

  • Download URL: datamimic_ce-1.1.1.tar.gz
  • Upload date:
  • Size: 12.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for datamimic_ce-1.1.1.tar.gz
Algorithm Hash digest
SHA256 f7a33443a85f7afbf03754e540a03da39ca2fff9a0d8521077d06974b0452112
MD5 bb92827943db18939a58caf279295e08
BLAKE2b-256 90db3a77523d62d7b5f2976ba4de0d594e428237dc137c2c88af418c8c169ec7

See more details on using hashes here.

File details

Details for the file datamimic_ce-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: datamimic_ce-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 12.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for datamimic_ce-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 027dc395038718b3f5337c58184cf81cf5f635ba254e40697e4f3486d04fadb8
MD5 d01251707c410edde548420db89f3aed
BLAKE2b-256 929fd1172dd81bd3e547dfd7b04065a7a86e4ab27d96894430e2c5910e0c8491

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page