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.28.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.28-py3-none-any.whl (21.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.1.28.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.28.tar.gz
Algorithm Hash digest
SHA256 725aa5299e9a80be7b191b8c340cfe9bfeddb21bba072b39a13c0ac7d3c99650
MD5 2a1051e2d580b499369be22a6380b3ef
BLAKE2b-256 9cb8bfc9e89331dc620d139156b9708a89beaf9f982f97d183e005f9c9c2d7f4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.1.28-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.28-py3-none-any.whl
Algorithm Hash digest
SHA256 a8b2d243669749607dd9cf56d60339964ca830b2b7cc8b7f2ed6e8be1b05a7cd
MD5 d1cb63307e6aa6f7571c77161679da49
BLAKE2b-256 f62e72eb3957a1f8a774b77f2162a66041b24d4009ef252dfa0ff51fa58405a1

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