Skip to main content

No project description provided

Project description

Bauklotz

A Python-based tool for software architecture analysis and visualization.

Overview

Bauklotz is a framework for building and executing analysis pipelines that process software project structures. It is designed to help software architects analyze codebases through configurable filters and generate various reports and visualizations.

Features

  • Pipeline-based architecture analysis
  • Configurable filters for analyzing Python projects
  • Multiple report formats (CSV, YAML, UML diagrams)
  • Graph-based visualization of class hierarchies
  • Extensible filter and report system
  • Plugin system for custom filters and reports

Installation

pip install bauklotz

Usage

  1. Create a configuration file describing your analysis pipeline:
channel input

filter builtin.python.project:PythonProjectFilter project
filter builtin.python.structure:PythonClassHierarchyFilter hierarchy
    internal_modules: "your_module"

# External filter example
filter external.metrics:ComplexityFilter complexity
    threshold: 10

report builtin.writer.uml:ClassDiagramWriter classdiagram
   path: "output/classdiagram.uml"

input -> project -> hierarchy -> complexity -> classdiagram
  1. Run the analysis:
bauklotz config.bauklotz <project_dir> input --extension external

Configuration

The pipeline is configured using a simple DSL that defines:

  • Input channels
  • Filters for processing (both built-in and external)
  • Reports for output generation
  • Connections between components

Plugin System

Bauklotz supports external filters and reports through its plugin system. Custom filters can be added by:

  1. Creating a Python module with filter implementations
  2. Registering the module with Bauklotz
  3. Referencing the custom filters in your configuration using external.module:FilterName syntax

Core Components

  • Pipe: Base interface for pipeline construction and execution
  • Filter: Processes items in the pipeline
  • Report: Generates output in various formats

Output Formats

  • CSV reports
  • YAML summaries
  • UML class diagrams
  • Graph formats (GML)

Documentation

For detailed documentation, please visit [documentation link]

License

BSD3

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

bauklotz-1.0.3.tar.gz (51.2 kB view details)

Uploaded Source

Built Distribution

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

bauklotz-1.0.3-py3-none-any.whl (71.1 kB view details)

Uploaded Python 3

File details

Details for the file bauklotz-1.0.3.tar.gz.

File metadata

  • Download URL: bauklotz-1.0.3.tar.gz
  • Upload date:
  • Size: 51.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.4 CPython/3.13.7 Linux/5.15.154+

File hashes

Hashes for bauklotz-1.0.3.tar.gz
Algorithm Hash digest
SHA256 95592d3583c5d4dd7f5cd14fc3f750f7d333c6b46d4da1d03a2fa7ed073361c5
MD5 6b033459eda7757fa8976648f8c52ecb
BLAKE2b-256 3a3e4b9efed8647daea6e825aa0fe736a9b4a2b8ba39ccae3cc22d49c0dd7a56

See more details on using hashes here.

File details

Details for the file bauklotz-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: bauklotz-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 71.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.4 CPython/3.13.7 Linux/5.15.154+

File hashes

Hashes for bauklotz-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5106018ed931b171b5f2dbd313fa303692610d24d7eed52946746a4706947812
MD5 cf4c93cc1d9314cc1ea447bbab5f994d
BLAKE2b-256 d9e39d2877c23efc872e6c7d9f271d6edc0882e8afb8f4d3a4f8e484be232338

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