Skip to main content

NSoT

Network Source of Truth

CI Documentation Status PyPI Status

Network Source of Truth (NSoT) is a source of truth database and repository for tracking inventory and metadata of network entities to ease management and automation of network infrastructure.

NSoT is an API-first application that provides a REST API for managing IP addresses (IPAM), network devices, and network interfaces.

NSoT was originally created at Dropbox and is now maintained by Jathan McCollum.

What's New in v2.0.0

  • Upgraded to Django 5.2 and Django REST Framework 3.16
  • Requires Python 3.10+ (dropped Python 2.7 / 3.x < 3.10)
  • Modern tooling: uv for dependency management, ruff for linting/formatting
  • CI/CD via GitHub Actions with python-semantic-release

Installation

pip install nsot

Or with uv:

uv add nsot

Quick Start

# Initialize the config (~/.nsot/nsot.conf.py)
nsot-server init

# Create a superuser
nsot-server createsuperuser --email admin@localhost

# Start the server on 8990/tcp
nsot-server start

Then browse the API at http://localhost:8990/api/ or the admin at http://localhost:8990/admin/.

Development

git clone https://github.com/jathanism/nsot.git
cd nsot
uv sync --all-extras

# Run tests
NSOT_API_VERSION=1.0 uv run pytest -vv tests/

# Lint / format
uv run ruff check nsot/ tests/
uv run ruff format nsot/ tests/

Resources

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nsot-2.14.2.tar.gz (95.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nsot-2.14.2-py3-none-any.whl (130.5 kB view details)

Uploaded Python 3

File details

Details for the file nsot-2.14.2.tar.gz.

File metadata

  • Download URL: nsot-2.14.2.tar.gz
  • Upload date:
  • Size: 95.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nsot-2.14.2.tar.gz
Algorithm Hash digest
SHA256 b5e7f118d90fc24279be97bdca1f5aad316be52a8bf73f75452c1e5ca4e58aba
MD5 5992e3265d43ccae6797d65be4bfe23b
BLAKE2b-256 c544e56e2608a3d6d4c4c1db22fcfa5812146abe567c5820b9ce092ce3df7103

See more details on using hashes here.

Provenance

The following attestation bundles were made for nsot-2.14.2.tar.gz:

Publisher: release.yml on jathanism/nsot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nsot-2.14.2-py3-none-any.whl.

File metadata

  • Download URL: nsot-2.14.2-py3-none-any.whl
  • Upload date:
  • Size: 130.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for nsot-2.14.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c048909f869a7adf212d3d57834b1b46f52a95767a987fbc4eb65db5c048d3b9
MD5 ff81a93b331f4799a4030999a891266e
BLAKE2b-256 a1328753fe4adab4f57d39bfe10d3a703666952271617b36bf5012191d66dacd

See more details on using hashes here.

Provenance

The following attestation bundles were made for nsot-2.14.2-py3-none-any.whl:

Publisher: release.yml on jathanism/nsot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

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