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.4.2.tar.gz (22.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.4.2-py3-none-any.whl (41.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.4.2.tar.gz
  • Upload date:
  • Size: 22.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.4.2.tar.gz
Algorithm Hash digest
SHA256 0cb5a9e9251cdd014f867a5c56b64ee4451eb25328481a249809aabd064623a9
MD5 32847cf8bd71c7f33869835aa8a08171
BLAKE2b-256 a0648daca3ec940ea80ae4e3402563703e1064634040f6731695c57a1380cd4d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 41.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.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0a9e6e28c6aa6183ef3aafd2e77ba3b2fd0da46440dcda158127ce2c1ecc5576
MD5 c698e6864279bc6a92751d497ec343a7
BLAKE2b-256 70ad45e18eaaa0f7d3afab05abd08db41ab5bf19b237f68549784bad4263b6d3

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