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

This version

0.9.6

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.9.6.tar.gz (54.3 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.9.6-py3-none-any.whl (90.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nlbone-0.9.6.tar.gz
Algorithm Hash digest
SHA256 5883a7c4110152938ab31115feb07af8cbfc54908b1a50b9d4a51aabfb5bdb20
MD5 82cf27224284b1d1da24d7784141cae0
BLAKE2b-256 a9e19fdd545a0a1b2b352cbc6c7c7329e1566390ce67c7200103e9e5c1fb7c13

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for nlbone-0.9.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4fdf6cf1a3041ba4acbf7bfff912ea05bc25abe46da0d9cb503fbc7ab7c87cdd
MD5 2d40aeadf95000012a60391572243a0f
BLAKE2b-256 50dd96346349b7ac8b68180edfd9f0ef43ce7d4afa4ad0d94e130bf48046240b

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