Skip to content

v1.0.0

Choose a tag to compare

@rdeavila rdeavila released this 18 Feb 21:44
· 25 commits to main since this release
8e59e4f

v1.0.0 — Initial Release

We are excited to announce the first public release of NS116, an open-source, self-hosted web interface for managing AWS Route53 DNS records.

NS116 is designed for engineering teams that need a fast, secure, and collaborative way to manage DNS without giving direct AWS console access to everyone.

🚀 Key Features

  • Highway UI Identity: A distinct, high-contrast visual style inspired by road infrastructure, prioritizing legibility and function.
  • PostgreSQL Backend: Built for reliability and concurrency, using a robust SQL backend for users, sessions, and audit logs.
  • Multi-User & RBAC: Create multiple accounts with admin (full access) or editor (record management only) roles.
  • Granular Caching: Reduces AWS API costs and latency by locally caching zone data (5-minute TTL).
  • Audit Logging: Every action—from login to record deletion—is permanently logged with user attribution and IP address.
  • Single Binary Deployment: All static assets (HTML, CSS, JS) and database migrations are embedded into a single Go binary. No loose files.

🛠 Infrastructure

  • Docker Ready: Official Dockerfile included for containerized deployment.
  • Kubernetes Manifests: Ready-to-apply YAML files for K8s clusters.
  • Secure by Default:
    • CSRF protection on all forms.
    • Secure session management.
    • Strict input validation.

📦 Quick Start

Using Docker:

docker run -p 8080:8080 \
  -e DB_DSN="postgres://user:pass@host:5432/ns116" \
  -v ./config.yaml:/app/config.yaml \
  ghcr.io/rda-run/ns116:v1.0.0

Building from source:

git clone https://github.com/rda-run/ns116.git
cd ns116
make build
./ns116

📝 Configuration

Copy config.yaml.example to config.yaml and set your:

  1. Database DSN (PostgreSQL connection string)
  2. AWS Credentials (Access Key & Secret)

This is the first stable release. Please report any issues on the [https://github.com/rda-run/ns116/issues](Issue Tracker).