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

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.38.tar.gz
  • Upload date:
  • Size: 15.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.1.38.tar.gz
Algorithm Hash digest
SHA256 ab530ab772d24d3dec7772b4850c79333e3f6aa267a7246761717678c9822318
MD5 9925392a4c34cb0c12982ee9db7782b5
BLAKE2b-256 2056b7f49e4cf2ae1ddf57419c5dc12a126aa4308717d342169499b9d06d3173

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.38-py3-none-any.whl
  • Upload date:
  • Size: 30.6 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.38-py3-none-any.whl
Algorithm Hash digest
SHA256 425230ed81c8ce97b4342f82a8194a13d1d86aaf11e941325e66930a32e3630e
MD5 c2def17cfe89b92e3b056cb8bf30dc13
BLAKE2b-256 23818a6cecc9b36a2b78b41ca4cd637c77ef0f756b2b3b88b609e9afc0d56ac5

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