Skip to main content

Namespace package for components, packages, and plugins within the Swarmauri framework.

Project description

Swarmauri SDK

The Swarmauri SDK offers a comprehensive suite of tools designed for building distributed, extensible systems using the Swarmauri framework.

Core

  • Core Interfaces: Define the fundamental communication and data-sharing protocols between components in a Swarmauri-based system.

Standard

  • Base Classes: Provide a foundation for constructing Swarmauri components, with standardized methods and properties.
  • Mixins: Reusable code fragments designed to be integrated into various classes, offering shared functionality across different components.
  • Concrete Classes: Ready-to-use, pre-implemented classes that fulfill standard system needs while adhering to Swarmauri principles. These classes are the first in line for ongoing support and maintenance, ensuring they remain stable, performant, and up to date with future SDK developments.

Community

  • Third-Party Plug-in Integration: Concrete classes designed to extend the framework’s capabilities by utilizing third-party libraries and plugins.
  • Open Source Contributions: A collaborative space for developers to contribute new components, plug-ins, and features.

Experimental

  • In-Development Components: Early-stage features and components that push the boundaries of the Swarmauri framework, offering innovative solutions that are still in testing phases.

Features

  • Polymorphism: Allows for dynamic behavior switching between components, enabling flexible, context-aware system behavior.
  • Discriminated Unions: Provides a robust method for handling multiple possible object types in a type-safe manner.
  • Serialization: Efficiently encode and decode data for transmission across different environments and system components, with support for both standard and custom serialization formats.
  • Intensional and Extensional Programming: Leverages both rule-based (intensional) and set-based (extensional) approaches to building and manipulating complex data structures, offering developers a wide range of tools for system design.

Use Cases

  • Modular Systems: Develop scalable, pluggable systems that can evolve over time by adding or modifying components without disrupting the entire ecosystem.
  • Distributed Architectures: Build systems with distributed nodes that seamlessly communicate using the SDK’s standardized interfaces.
  • Third-Party Integrations: Extend the system's capabilities by easily incorporating third-party tools, libraries, and services.
  • Prototype and Experimentation: Test cutting-edge ideas using the experimental components in the SDK, while retaining the reliability of core and standard features for production systems.

Future Development

The Swarmauri SDK is an evolving platform, and the community is encouraged to contribute to its growth. Upcoming releases will focus on enhancing the framework's modularity, providing more advanced serialization methods, and expanding the community-driven component library.

Modules Overview

Importer

  • importer.py: Handles the dynamic importing of modules and components within the Swarmauri framework.

Interface Registry

  • interface_registry.py: Manages the registration and lookup of interfaces used for communication between different components.

Plugin Citizenship Registry

Plugin Manager

  • plugin_manager.py: Oversees the loading, initialization, and management of plugins to extend the functionality of the Swarmauri framework.

Contributing

Contributions are welcome! If you'd like to add a new feature, fix a bug, or improve documentation, kindly go through the contributions guidelines first.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

swarmauri-0.7.0.dev5.tar.gz (23.4 kB view details)

Uploaded Source

Built Distribution

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

swarmauri-0.7.0.dev5-py3-none-any.whl (24.0 kB view details)

Uploaded Python 3

File details

Details for the file swarmauri-0.7.0.dev5.tar.gz.

File metadata

  • Download URL: swarmauri-0.7.0.dev5.tar.gz
  • Upload date:
  • Size: 23.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.4

File hashes

Hashes for swarmauri-0.7.0.dev5.tar.gz
Algorithm Hash digest
SHA256 f024eb332c71d42ec3aeeafb1a182d4a8334bb096d445df2ca98a3f0c841c5a9
MD5 8fad4c2d786924b409ad8dca81868c8f
BLAKE2b-256 259af1096a1a3a30b2a6e9d4c8c1ee97378ac99bd4160b7a31fde5a82ab49ad1

See more details on using hashes here.

File details

Details for the file swarmauri-0.7.0.dev5-py3-none-any.whl.

File metadata

File hashes

Hashes for swarmauri-0.7.0.dev5-py3-none-any.whl
Algorithm Hash digest
SHA256 5fd46b2eab7305fde10f8191c99103c783effa4aa39a4f048371e94704adbb32
MD5 28f5ba3fee87117484a094f608ff8650
BLAKE2b-256 6fd77dde5a1a51d007141bfa5b7693f7180640db8130a7da90fc173c7ef257b0

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