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.29.tar.gz (11.6 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.29-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.29.tar.gz
  • Upload date:
  • Size: 11.6 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.29.tar.gz
Algorithm Hash digest
SHA256 2d85ae1cdf53a0c81572d51b2c4ea10c5dcc1b83121a8eb0f5052351ba45ee48
MD5 1ce43cbf31e561164941b6cb896421b2
BLAKE2b-256 abbd8f7da484d2e4c46dd78a5c767fa7651ca2cd4f0591c8c219f381e87f5694

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.29-py3-none-any.whl
  • Upload date:
  • Size: 23.1 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.29-py3-none-any.whl
Algorithm Hash digest
SHA256 c5426bc4a634e52b08db01578b6fc17be46a17fdddd6ce49122129982dac91cc
MD5 42d21363924cd39e3d865e338edf0fc2
BLAKE2b-256 f92b0522e7f08c9308272ebfb0a9bd23ba0304e5cc01f9c9c17d17970596571d

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