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)

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.1.37.tar.gz (15.5 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.1.37-py3-none-any.whl (30.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nlbone-0.1.37.tar.gz
Algorithm Hash digest
SHA256 b7a66913575370ac4f20829653f0b335994e1961fb7ad8c0480c9a25d55ef5e4
MD5 9eafc24e7aac5a55c3408b5876f59ab7
BLAKE2b-256 f938b7da864f02707a0973167f2b47c89d0787c784244990c34351c412239cdf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.37-py3-none-any.whl
  • Upload date:
  • Size: 30.6 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.1.37-py3-none-any.whl
Algorithm Hash digest
SHA256 3ef0166690e11970848a8a8b4c3bf4fa7759fcfa3dd4b4fbd1cdde9cf6c0089c
MD5 257f8b4f042d37636666b3d5e779c099
BLAKE2b-256 008d36de30dd5f501640a32b13cc3ef1ea8536691b38d82bedcad04f34f1d691

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