Skip to main content

Umbrella package: fastx_platform.configuration, fast_admin, fast_notifications, fast_resilience, fast_versioning, fast_features, fast_channels, fast_db, observability, analytics, queues, … — merged fast_* modules under one install.

Project description

fast-platform

Single installable distribution (pip install fast-platform) that bundles many former standalone fast_* modules unchanged at import time (flat top-level imports such as from notifications import …, from db import …).

Logical organization is defined by the package taxonomy in src/fast_platform/taxonomy.py. Imports stay flat under src/; the taxonomy is used for docs, tests layout, and navigation.

Package taxonomy

Each top-level name under src/ belongs to exactly one section (PackageSection). The canonical mapping is PACKAGE_TO_SECTION in fast_platform.taxonomy.

Section Meaning
core Config, DTOs, errors, helpers, orchestration services
security Crypto, API keys, identity, secret backends
persistence SQLAlchemy + multi-backend datastores
data_platform Search, vectors, object storage, cache
messaging Queues, Kafka, jobs, events, notifications, webhooks
realtime Channels, streams, WebRTC
integrations LLM, payments, media, analytics, admin
operations Observability, OpenTelemetry, flags, tenancy, resilience, API versioning

Packages by section

Section Packages
core configuration, dtos, errors, utils, service, fast_platform
security security, secrets, identity
persistence db, datastores
data_platform search, vectors, storage, cache
messaging kafka, queues, events, jobs, notifications, webhooks
realtime channels, streams, webrtc
integrations llm, payments, media, analytics, admin
operations observability, otel, resilience, tenancy, versioning, features

Use in code:

from fast_platform.taxonomy import section_of, PackageSection

section_of("notifications")  # PackageSection.MESSAGING

Layout: src/ vs tests/

  • src/flat top-level packages (configuration/, notifications/, …) so existing imports remain stable.
  • tests/ — mirrors the taxonomy: tests/<section_folder>/<package>/. Section folder names come from SECTION_TEST_FOLDER in taxonomy.py (e.g. core, persistence, data_platform). The security section uses sec (not security) so the security package can live at tests/sec/security/ without a path collision.

Example: tests for utils live under tests/core/utils/; tests for notifications under tests/messaging/notifications/.

Highlights (by import name)

Import Role
configuration JSON config loaders + Pydantic DTOs per subsystem
dtos Shared Pydantic DTOs (IDTO base)
errors Structured HTTP-oriented exceptions (BadInputError, NotFoundError, …)
notifications Email/SMS/push templates, fan-out, idempotency, preferences (pip install fast-platform[jinja2] for templating extras)
resilience Circuit breakers, retries, bulkheads
versioning API versioning (VersionedAPIRouter, VersioningMiddleware, path/header/query strategies)
features In-app feature flags, rollout, targeting
channels Real-time hub, Redis/Kafka backends, presence, ACLs, metrics
db SQLAlchemy engine, sessions, DBDependency
datastores IDataStore adapters (Redis, Mongo, ES, …)
observability Logging, metrics, tracing, audit, OTLP
admin Admin API router (users, roles, audit log), generic SQLAlchemy CRUD routers
queues Queues (DLQ, envelope, backends)
jobs Background jobs
storage Object storage (S3, GCS, Azure)
secrets Secret backends + cache (Vault, AWS, GCP; not the stdlib secrets module)
vectors Vector stores
tenancy Multi-tenant context
webhooks Webhook signing / delivery
webrtc WebRTC signaling
llm LLM providers, tools, streaming
kafka Kafka producer/consumer, outbox
identity OAuth/OIDC, JWKS, API keys
media Uploads, variants, presigned URLs
payments Payment gateways, webhooks, SCA
search Meilisearch, Typesense, OpenSearch
security API keys, inbound webhooks, field encryption

Install: pip install fast-platform

Optional backends: e.g. pip install fast-platform[async,otel,rabbitmq,s3,openai,meilisearch,pillow].

pyfastmvc depends on this wheel for these modules instead of many separate distributions.

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

fastx_platform-1.7.1.tar.gz (307.5 kB view details)

Uploaded Source

Built Distribution

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

fastx_platform-1.7.1-py3-none-any.whl (484.5 kB view details)

Uploaded Python 3

File details

Details for the file fastx_platform-1.7.1.tar.gz.

File metadata

  • Download URL: fastx_platform-1.7.1.tar.gz
  • Upload date:
  • Size: 307.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for fastx_platform-1.7.1.tar.gz
Algorithm Hash digest
SHA256 c273e1a7861c77dd621aa0c731b8a103f6efe10a4ba0dcefa76acac0413d1211
MD5 656968c86201d6c05db5a394ea02cd5f
BLAKE2b-256 15ba19d510167deb3e166857501cbb049d8e40d7a6bb1e480a144faa7c94500c

See more details on using hashes here.

File details

Details for the file fastx_platform-1.7.1-py3-none-any.whl.

File metadata

  • Download URL: fastx_platform-1.7.1-py3-none-any.whl
  • Upload date:
  • Size: 484.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for fastx_platform-1.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 eb90e2d709ce6c52bb43ceeab63c7ccdcaebaf034d9aab0c0d49f5e25708802f
MD5 838727e66039766576c6f9ed6e5d9129
BLAKE2b-256 568d539b1fa61235501396dea31594919f21bfd3602dd9531c7c67e8e301b913

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