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

This version

0.3.3

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.3.3.tar.gz (16.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.3.3-py3-none-any.whl (29.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nlbone-0.3.3.tar.gz
  • Upload date:
  • Size: 16.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.3.3.tar.gz
Algorithm Hash digest
SHA256 75d3b847f916eba0db06c49ec47d2d1c05d8652357fb215b946d7ce51e0d252f
MD5 7249bbb22e19fcb783957e3eb64c3c30
BLAKE2b-256 1231ec2233a145b4ec71fc7fa016dba7fb1cad5b80ff9e099c9098306e4f584b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nlbone-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 29.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.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 32dc29f2e5199ae6dd56abdc3e6c30c5a051d2bb18a5857f0a19084b6985855c
MD5 d3c11c0d8ac5f0183338792e1fe95a76
BLAKE2b-256 15d3ccc60e0c978b53d4cbdbc334135c69ac390d596afa533aae6a0ded88ad16

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