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.26.tar.gz (11.1 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.26-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.26.tar.gz
  • Upload date:
  • Size: 11.1 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.26.tar.gz
Algorithm Hash digest
SHA256 618ed62021357d58e8d38e3d230e3424362563250a9d6d70b4967db6eb96b3a6
MD5 389d0a25a74289ed0a5441c72c363984
BLAKE2b-256 27d2b591fad145427d28cfe1250cfe672dec97ed5329c5d104067b5db7b6b3ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.26-py3-none-any.whl
  • Upload date:
  • Size: 21.8 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.26-py3-none-any.whl
Algorithm Hash digest
SHA256 c554695a1c490184c600703f5f711069aee124e27d8d1071a25bf50d7cb84544
MD5 8ede94abfa7a4cace5470d146aab4a61
BLAKE2b-256 8fbc9abc82dea76099882acb0b0603cc864ec07b1fe0d2da1a0363e0a40a9636

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