Docs/localtool

localtool

Unified CLI for local development — DNS management and HTTPS certificates in one tool.

Installation

cargo install localtool

# Or build from source:
# git clone https://github.com/veduket/localtool
# cd localtool && cargo build --release && sudo cp target/release/localtool /usr/local/bin/

Quick start

1

Initialize DNS

$ localtool dns init
2

Add a domain

$ localtool dns add myapp.test 127.0.0.1
3

Apply DNS config

$ localtool dns apply
4

Verify DNS

$ ping myapp.test
5

Initialize SSL CA

$ localtool ssl init
6

Generate HTTPS cert

$ localtool ssl generate myapp.test

DNS Commands

All local-dns commands are available under localtool dns.

localtool dns add <domain> <ip>Add a DNS entry--zone, --group, --comment
localtool dns remove <domain>Remove a DNS entry
localtool dns move <domain>Move entry to another zone/group--zone, --group
localtool dns copy <domain>Copy entry to another zone/group--zone, --group
localtool dns edit <domain>Edit IP or comment--ip, --comment
localtool dns listList all entries
localtool dns initInitialize DNS configuration
localtool dns resetDelete database and re-initialize
localtool dns statusShow DNS system status
localtool dns applyApply DNS configuration
localtool dns detectDetect system DNS setup
localtool dns logsView dnsmasq logs--follow, --errors, --lines
localtool dns profileManage profilescreate, switch, list, delete
localtool dns zoneManage zonescreate, list, delete, show
localtool dns groupManage groupscreate, list, delete

SSL Commands

All local-ssl commands are available under localtool ssl.

localtool ssl initInitialize CA and install system trust
localtool ssl generate <domains>Generate HTTPS certificates
localtool ssl listList all generated certificates
localtool ssl show <domain>Show certificate details
localtool ssl trustReinstall CA system trust
localtool ssl statusShow CA and certificate status
localtool ssl check <domain>Check certificate validity

Backwards Compatibility

The standalone local-dns and local-ssl binaries continue to work as before. They are thin wrappers that delegate to the same underlying libraries.

# These still work:
local-dns add myapp.test 127.0.0.1
local-ssl generate myapp.test

# Equivalent unified commands:
localtool dns add myapp.test 127.0.0.1
localtool ssl generate myapp.test

GitHub

Source code, issues, and contributions:

github.com/veduket/localtool