Skip to main content

Zibanu Django State Machine

zibanu.django.state_machine

zibanu.django.state_machine is a Django application that provides a reusable state machine system for Zibanu Django projects.

It includes database models, Django admin integration, API endpoints, and helper modules to define workflows based on states and transitions. It can be used to model business processes such as document approval, order lifecycle, request validation, or any other entity that moves through a controlled sequence of states.

Installation

Install the package with pip:

bash pip install zibanu-django-state-machine

Dependencies

This package is intended to be used together with the Zibanu Django base package.

Getting started

Add the application to INSTALLED_APPS in your Django settings:

INSTALLED_APPS += ["zibanu.django.state_machine"]

If you want to expose the built-in API endpoints, include the package URLs in your project URL configuration.

Package structure

The application is organized into the following modules and subpackages.

Main application

  • zibanu.django.state_machine

Main Django application package for the state machine system.

Models

  • zibanu.django.state_machine.models

Contains the core models used by the package:

  • StateMachine
  • State
  • Transition
  • TransitionGroup
  • StateMachineProxy
  • StateLog

These models define the workflow structure and allow transitions and history tracking across states.

Admin

  • zibanu.django.state_machine.admin

Registers the main models in the Django admin site.

Admin views

  • zibanu.django.state_machine.admin_views

Contains the custom admin classes used to manage state machine components.

Available modules:

  • state
  • state_log
  • state_machine
  • transitions

API

  • zibanu.django.state_machine.api

Namespace for API-related components.

Serializers

  • zibanu.django.state_machine.api.serializers

Serialization layer for API operations.

Available modules:

  • state
  • state_machine

Services

  • zibanu.django.state_machine.api.services

Service and view layer used to expose package functionality through HTTP endpoints.

Available modules:

  • state
  • state_machine

Internal library

  • zibanu.django.state_machine.lib

Internal helper package used by the application.

Classes

  • zibanu.django.state_machine.lib.classes

Support classes related to state machine logic.

Fields

  • zibanu.django.state_machine.lib.fields

Custom model field helpers.

Available modules:

  • foreignkey_field

Managers

  • zibanu.django.state_machine.lib.managers

Custom managers and queryset helpers.

Available modules:

  • transition

Utils

  • zibanu.django.state_machine.lib.utils

Utility functions used internally by the package.

Available modules:

  • get_auth_user

Migrations

  • zibanu.django.state_machine.migrations

Contains the Django migration files for the package models.

Localization

  • zibanu.django.state_machine.locale

Translation resources for the application.

Available API endpoints

The package provides the following endpoints:

  • state-machine/summary/
  • state-machine/get/
  • state/summary/
  • state/next/

Metadata

Release files for zibanu-django-state-machine 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for zibanu-django-state-machine 1.0.2
File Size Uploaded
zibanu_django_state_machine-1.0.2.tar.gz 31.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for zibanu-django-state-machine 1.0.2
File Interpreter ABI Platform
zibanu_django_state_machine-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 79.9 kB

Release files / zibanu_django_state_machine-1.0.2.tar.gz

Download URL zibanu_django_state_machine-1.0.2.tar.gz
Size 31.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a968f6faf29859f0be868d46df46c6c35ac3c809fbe3eefad56f703732d6f8a9
BLAKE2b-256 checksum
How to use checksums
f48ad5ff163b9e85f0d392ccef659b59a487c002bfce3c6476dce2d141cd9f5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Release files / zibanu_django_state_machine-1.0.2-py3-none-any.whl

Download URL zibanu_django_state_machine-1.0.2-py3-none-any.whl
Size 48.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7d3d4c93b41c3e7422056c4102fd6e1570fab5b22c37707f5d16a7bf78545a6f
BLAKE2b-256 checksum
How to use checksums
6ff3eb646bd0adab21f6ecfc662d1a5e18c90aa3271466521e6c3cce7db54bba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.13

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page