Skip to main content

Cutting-edge Python library for generating random data for Protobuf messages

Project description

🎲 protodummy

A cutting-edge Python library for effortlessly generating random, realistic data for your Protocol Buffer (protobuf) messages.

PyPI version Python Version License: MIT

✨ Features

  • 🚀 Lightning Fast: Seamlessly populate massive protobuf structures.
  • 🧠 Smart Generation: Powered by faker to generate realistic names, emails, addresses, and more, automatically inferred from your field names.
  • 🛠️ Deeply Customizable: Easily override rules for specific fields when you need exact constraints.
  • 📦 Zero-Friction: Works flawlessly with standard protobuf compiler outputs.

📥 Installation

Simply install via pip (or your favorite package manager):

pip install protodummy

⚡ Quickstart

Assume you have a user.proto file:

syntax = "proto3";

message UserProfile {
    string id = 1;
    string full_name = 2;
    string email_address = 3;
    int32 age = 4;
}

Now, generate a random user profile in Python in two lines:

from my_protos import user_pb2
from protodummy import generate_dummy

# 🪄 Magic!
random_user = generate_dummy(user_pb2.UserProfile)

print(random_user.full_name)     # e.g. "Jane Doe"
print(random_user.email_address) # e.g. "jane.doe@example.com"
print(random_user.age)           # e.g. 42

🤝 Contributing

Contributions are completely welcome! Please feel free to open a Pull Request or an Issue to help us make protodummy even better.

📄 License

This project is licensed under the MIT License.

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

protodummy-0.1.1.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

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

protodummy-0.1.1-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file protodummy-0.1.1.tar.gz.

File metadata

  • Download URL: protodummy-0.1.1.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for protodummy-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0d5ebdf9182b56aa42942a06396518d919e7b7904f0fcce4e940b4ee13aacb86
MD5 34d5a895ee8f3d74bbc0d05c0ef44582
BLAKE2b-256 f8abbf811b7316c4c137c6caf202709584fbd0b670688fe2325b5362022fa514

See more details on using hashes here.

Provenance

The following attestation bundles were made for protodummy-0.1.1.tar.gz:

Publisher: python-publish.yml on nth-bailey/protodummy-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file protodummy-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: protodummy-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for protodummy-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4d7cf346712b3b8a3df4e6461e6e7652fb988c90f5c3e980e47cdc0f3f3cf854
MD5 8fabc819f3134623ba50426f12c424c7
BLAKE2b-256 2e16d8c1226f4d324e3cbc5a3e432ebf323a52bada4bea01c128ec116edea9dd

See more details on using hashes here.

Provenance

The following attestation bundles were made for protodummy-0.1.1-py3-none-any.whl:

Publisher: python-publish.yml on nth-bailey/protodummy-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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