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.36.tar.gz (15.4 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.36-py3-none-any.whl (30.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.36.tar.gz
  • Upload date:
  • Size: 15.4 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.36.tar.gz
Algorithm Hash digest
SHA256 acb9d3b17a1571d6d4ea090912655c0d2cd6a169abd400889d8434f3cea3635b
MD5 806cd0b1a6efd530b5601e8b412743af
BLAKE2b-256 4b477ade906283c064590224da9a3963a86ceabab7edd1ea79370b15a895662f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.36-py3-none-any.whl
  • Upload date:
  • Size: 30.5 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.36-py3-none-any.whl
Algorithm Hash digest
SHA256 6d38ff388b47e6cefe48211539d6f74d851a27f334bd71d3f3c67d5005d34a28
MD5 4699b1bd51f4a8426bc7714e0829ed31
BLAKE2b-256 7564f57fa3c1febab9ca3220eded5912a3c5cc69c732b5d49278d716f3ae9c23

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