Skip to main content

Backbone package for interfaces and infrastructure in Python projects

Project description

nlbone

nlbone (NumberLand Backbone) is a lightweight Python package that provides the foundational interfaces and infrastructure for NumberLand projects.
It follows a clean architecture style (ports & adapters) so that domain logic is separated from infrastructure concerns.


✨ Features

  • Domain interfaces
  • Immutable domain models
  • Application services (use cases) independent of infrastructure.
  • Infrastructure adapters (DB, HTTP, etc.).
  • Config management with pydantic-settings.
  • Dependency injection container for easy wiring.
  • Testing ready with pytest + pytest-asyncio.
  • Dev tools: Ruff (lint), Mypy (typing), Pre-commit hooks.

📦 Installation

pip install nlbone

🛠 For development:

git clone https://github.com/your-org/nlbone.git
cd nlbone
python -m venv .venv
source .venv/bin/activate   # (Linux/macOS)
# .venv\Scripts\activate    # (Windows)

pip install -e ".[dev]"

python -m pip install build twine
python -m build

🚀 Quick Example

import anyio
from nlbone import build_container


async def main():
    container = build_container()
    user = await container.register_user("me@numberland.com")
    print(user)


anyio.run(main)

📦 Used In

  • Explore
  • Pricing

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

nlbone-0.6.0.tar.gz (29.4 kB view details)

Uploaded Source

Built Distribution

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

nlbone-0.6.0-py3-none-any.whl (53.5 kB view details)

Uploaded Python 3

File details

Details for the file nlbone-0.6.0.tar.gz.

File metadata

  • Download URL: nlbone-0.6.0.tar.gz
  • Upload date:
  • Size: 29.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nlbone-0.6.0.tar.gz
Algorithm Hash digest
SHA256 b8b2a50c22302ff4e756f2b4639dd9cb36623e0e95ac6b75914128bd2fe3ec26
MD5 92ecb2a249ca43c13955ba185691931d
BLAKE2b-256 f0afe1a2534f9f4ce9c97e300d98c6c68e177e3b7ca30c93b7d36baf8b49fd30

See more details on using hashes here.

File details

Details for the file nlbone-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: nlbone-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 53.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nlbone-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 70c692b5d2e5401ba82d7955448c69e93b3b9348a89fb9ecde62e9d69c83510e
MD5 ecce6166479e354e17d47a23a126104c
BLAKE2b-256 3e59532233dc3faf3e5531f62d9a9cf147de7be6c149b623494c6137498559c5

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