tdnss
A Python API wrapper for
Technitium DNS Server's
HTTP API.
Notice
This project is a work in progress. A list of features will be added, for now
some basic methods of
API
such as login/logout are implemented, with work on the zone
API and the settings API is
ongoing.
Any feedback is welcome!
Why?
TL;DR: the main reason I use this DNS server is its API, since it gives full
control over the server without having to login to the web console. The idea is
that scripts/CLIs/other tools can be built upon a library that wraps the API.
Installation
The tdnss
package is available on PyPI.
For development, use the provided Pipfile:
pipenv install --dev
This creates a virtual
environment, installs the
dependencies to run the package, the development tools, and the package itself
as an editable dependency in order to test the changes live.
If you don't use Pipenv, there's a requirements.txt
provided to install
runtime dependencies and a requirements-dev.txt
to install development tools
and tdnss
as an editable package.
Contributing
Do you want to contribute to this project? Great! We welcome any contributions,
from code to documentation through feedback. Read
CONTRIBUTING for more information.
License
This project is licensed under the GNU General Public License v3.0 only.
See COPYING to see the full text.
Versioning
This project follows
Semantic Versioning 2.0.0.