Skip to main content

Tools to convert from and to JSON Structure from various other schema languages.

Project description

Structurize / Avrotize

Structurize is a powerful schema conversion toolkit that helps you transform between various schema formats including JSON Schema, JSON Structure, Avro Schema, Protocol Buffers, XSD, SQL, and many more.

This package is published under two names:

  • structurize - The primary package name, emphasizing JSON Structure conversion capabilities
  • avrotize - The original package name, emphasizing Avro Schema conversion capabilities

Both packages currently share the same features and codebase. However, in future releases, Avro-focused and JSON Structure-focused features may be split across the two tools to make the feature list more manageable and focused for users. Choose whichever variant better aligns with your primary use case.

Quick Start

Install the package:

pip install structurize

or

pip install avrotize

Use the CLI:

# Using structurize
structurize --help

# Or using avrotize
avrotize --help

Key Features

  • Convert between JSON Schema, JSON Structure, and Avro Schema
  • Transform schemas to and from Protocol Buffers, XSD, ASN.1
  • Generate code in C#, Python, TypeScript, Java, Go, Rust, C++, JavaScript
  • Export schemas to SQL databases (MySQL, PostgreSQL, SQL Server, Oracle, Cassandra, MongoDB, DynamoDB, and more)
  • Convert to Parquet, Iceberg, Kusto, and other data formats
  • Generate documentation in Markdown

Documentation

For complete documentation, examples, and detailed usage instructions, please see the main repository:

📖 Full Documentation

The main README includes:

  • Comprehensive command reference
  • Conversion examples and use cases
  • Code generation guides
  • Database schema export instructions
  • API documentation

License

MIT License - see the LICENSE file in the repository root.

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

structurize-3.5.0.tar.gz (394.8 kB view details)

Uploaded Source

Built Distribution

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

structurize-3.5.0-py3-none-any.whl (435.7 kB view details)

Uploaded Python 3

File details

Details for the file structurize-3.5.0.tar.gz.

File metadata

  • Download URL: structurize-3.5.0.tar.gz
  • Upload date:
  • Size: 394.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for structurize-3.5.0.tar.gz
Algorithm Hash digest
SHA256 1db08070220c98d4901f9f494673dbf06ec6f9bf758026f37a8a194e4c6195a2
MD5 4ad32c9bc9b3005b97dceabd430c38d3
BLAKE2b-256 7e0f35bf071e9f4507ae6ca1b4e5124d4d20629c74a662ad05affa41aee05085

See more details on using hashes here.

File details

Details for the file structurize-3.5.0-py3-none-any.whl.

File metadata

  • Download URL: structurize-3.5.0-py3-none-any.whl
  • Upload date:
  • Size: 435.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for structurize-3.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 230f7da80c4a00c7538d7ac19a7c2d8ca8ea01eb8a9d96b770dca7ed378236d9
MD5 b940af27f82f76be71f091d31ef3ee7e
BLAKE2b-256 26cce620069a4cef0641fe34a55ebe1102ac615f2bc8c568541cfd4f81e83dbb

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