0xERR0R/blocky

Fast and lightweight DNS proxy as ad-blocker for local network with many features

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 42 minutes ago
Added to GitGenius on September 9th, 2026
Created on November 6th, 2019
Open Issues & Pull Requests: 46 (+0)
GitHub issues: Enabled
Number of forks: 304
Total Stargazers: 6,941 (+1)
Total Subscribers: 33 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 5.7 days
Mean response time: 55.8 days
90th percentile: 95.4 days
Tracked items: 151

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 84% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "🐞 bug" is answered fastest, typically in about 32 hours, while "🔨 enhancement" waits about 3 weeks. Only 7% of issues opened in the past year have been closed. Three people close 73% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 25
New in 7 days: 2
Closed in 7 days: 6
Avg open age: 844 days
Stale 30+ days: 22
Stale 90+ days: 14

Recent activity

Opened in 7 days: 2
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • 🔨 enhancement (59)
  • Stale (38)
  • 🐞 bug (32)
  • ❔ question (16)
  • 📙 documentation (6)
  • 🧰 technical debts (5)
  • 👋 help wanted (2)
  • 📘 good first issue (2)

Detailed Description

Blocky is a DNS proxy and ad-blocker for local networks written in Go.

Blocky solves the problem of unwanted DNS queries reaching external services by intercepting and filtering DNS traffic at the network level. It maintains external blocklists for ads and malware, applies them selectively to client groups, and supports regex-based rules. The tool blocks queries by domain name, CNAME responses, and IP addresses. Beyond blocking, it offers advanced DNS features including custom domain resolution, conditional forwarding to external resolvers, and per-client-group upstream resolver configuration. Performance is improved through customizable DNS answer caching, prefetching of frequently queried domains, and parallel resolution using multiple external resolvers simultaneously.

Blocky suits self-hosted deployments on resource-constrained hardware such as Raspberry Pi and OpenWrt routers, as well as homelab and small business networks seeking privacy-focused DNS filtering without external data collection. It runs as a stateless single binary with no database or temporary files required. The tool supports modern DNS protocols including DNS over HTTPS, TLS, QUIC, and HTTP/3, making it suitable for environments prioritizing secure communication. For those comparing alternatives, the README does not name other projects. Blocky integrates with monitoring and logging infrastructure through Prometheus metrics, Grafana dashboards, and optional database logging to MySQL, MariaDB, PostgreSQL, or Timescale. A REST API and CLI tool enable programmatic interaction and automation.

Development activity shows consistent engagement with pull request review and bug fixes. The project maintains active support across multiple architectures and provides a community-supported Helm chart for Kubernetes deployments. The maintainer emphasizes that Blocky collects no telemetry, user data, or statistics, and operates independently without hidden filtering.