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.31.tar.gz (13.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.1.31-py3-none-any.whl (26.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.31.tar.gz
  • Upload date:
  • Size: 13.3 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.31.tar.gz
Algorithm Hash digest
SHA256 2b471aa7de0f9a78b4c66e0db2bdeafc29712446e2e28de29c8189d574fefe74
MD5 76d3fd2bc983c4f74c1404071fc65034
BLAKE2b-256 7cad824a961fe28b06571809822a009619372dcbe29eb1c60dc0957272f04b20

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.31-py3-none-any.whl
  • Upload date:
  • Size: 26.0 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.31-py3-none-any.whl
Algorithm Hash digest
SHA256 2fc62df6d3e397fdad922b92283947775bbaa0cd3a8ceb844da4725f272ba4e3
MD5 0437572151e86372fb8f9939037a4a31
BLAKE2b-256 5388be25dccdc0d055ad7bfacb05717d27600aed1dbaf107a83d0c54296b35b4

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