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

🚀 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

This version

0.1.0

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.0.tar.gz (9.7 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.0-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.0.tar.gz
  • Upload date:
  • Size: 9.7 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.0.tar.gz
Algorithm Hash digest
SHA256 2ae868c5d8efe877dc5f11e01d7b848f49bae9aed73bd41c92fb78039d8ec732
MD5 d5c24d24e844ee74ec0afea47d0f3bce
BLAKE2b-256 9cfb3effdf2e8b8d82a17c6ce53c7362491c95e58affac741671cf36475706b1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 19.9 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 569614de8e2bb8b1457a8d29bfed77bd8e63ab58f061fe332b9ba25d35f36d23
MD5 b11dd6fb585a5c3cef00a61a5f2f9546
BLAKE2b-256 ff5b89192156c4bd102adc9846fa7eb4d6c8b37abe35b77319a49394554ee55f

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