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.35.tar.gz (15.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.35-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.35.tar.gz
  • Upload date:
  • Size: 15.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.35.tar.gz
Algorithm Hash digest
SHA256 5280a3c6858790969fe81f8d7c2676db74734afeee533acba5bca6ec91e92ea9
MD5 2dac8cee22d2e42bda8e62f29c6fe83f
BLAKE2b-256 b797ce1c25b133f60075934006313ece1a00f80dfddbc49939e08b709c380324

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.35-py3-none-any.whl
  • Upload date:
  • Size: 30.4 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.35-py3-none-any.whl
Algorithm Hash digest
SHA256 2dc0fb198dd6b928970ab11b22ac0b2c1fef0ad13c074dc91b5854fc76ced1e5
MD5 a8ecaa0233e04ef4be46b0d29be63500
BLAKE2b-256 3022d0cf7a6f41dc354b88fb6bf55d9fc4223aea5941dfdfa39699ee5165c391

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