{"id":44655974,"url":"https://github.com/drudge/isotope","last_synced_at":"2026-02-14T22:01:59.585Z","repository":{"id":334832739,"uuid":"1142950566","full_name":"drudge/isotope","owner":"drudge","description":"A modern web UI for Technitium DNS Server","archived":false,"fork":false,"pushed_at":"2026-01-27T13:26:37.000Z","size":201,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-27T15:36:52.035Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/drudge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-27T02:52:33.000Z","updated_at":"2026-01-27T13:26:49.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/drudge/isotope","commit_stats":null,"previous_names":["drudge/isotope"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/drudge/isotope","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drudge%2Fisotope","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drudge%2Fisotope/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drudge%2Fisotope/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drudge%2Fisotope/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drudge","download_url":"https://codeload.github.com/drudge/isotope/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drudge%2Fisotope/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29457786,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-14T21:29:27.764Z","status":"ssl_error","status_checked_at":"2026-02-14T21:28:11.111Z","response_time":53,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-02-14T22:00:41.404Z","updated_at":"2026-02-14T22:01:59.573Z","avatar_url":"https://github.com/drudge.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Isotope\n\nA clean, fast web interface for [Technitium DNS Server](https://technitium.com/dns/).\n\n![Isotope Screenshot](https://raw.githubusercontent.com/drudge/isotope/main/.github/screenshot.png)\n\n## Features\n\n- Modern, responsive UI that works on desktop and mobile\n- Real-time dashboard with query statistics and charts\n- Zone management with full DNS record editing\n- Cache browser with domain-level controls\n- Block list and allow list management\n- DHCP scope and lease management\n- DNS Client for query testing\n- DNS Apps management\n- Query log viewer with advanced filtering\n- Server log viewer with syntax highlighting\n- Administration panel (users, groups, sessions, permissions)\n- Comprehensive server settings\n- Cluster management\n- Dark mode support\n\n## Installation\n\n### Docker (Recommended)\n\n```bash\ndocker run -d \\\n  -p 8080:80 \\\n  -e TECHNITIUM_API_URL=http://your-technitium-server:5380 \\\n  --name isotope \\\n  ghcr.io/drudge/isotope:latest\n```\n\nThen open http://localhost:8080 in your browser.\n\n### Docker Compose\n\n```yaml\nservices:\n  isotope:\n    image: ghcr.io/drudge/isotope:latest\n    ports:\n      - \"8080:80\"\n    environment:\n      - TECHNITIUM_API_URL=http://technitium:5380\n    depends_on:\n      - technitium\n\n  technitium:\n    image: technitium/dns-server:latest\n    ports:\n      - \"5380:5380\"\n      - \"53:53/udp\"\n      - \"53:53/tcp\"\n    volumes:\n      - technitium-data:/etc/dns\n\nvolumes:\n  technitium-data:\n```\n\n### Static Files\n\nDownload the latest release from the [releases page](https://github.com/drudge/isotope/releases) and serve the files with any web server. Configure your server to:\n\n1. Serve the static files\n2. Proxy `/api/*` requests to your Technitium DNS Server\n3. Return `index.html` for all non-file routes (SPA fallback)\n\nExample nginx configuration:\n\n```nginx\nserver {\n    listen 80;\n    root /var/www/isotope;\n    index index.html;\n\n    location /api/ {\n        proxy_pass http://localhost:5380/api/;\n    }\n\n    location / {\n        try_files $uri $uri/ /index.html;\n    }\n}\n```\n\n## Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Start dev server (proxies API to localhost:5380)\nnpm run dev\n\n# Build for production\nnpm run build\n\n# Preview production build\nnpm run preview\n```\n\n### Environment Variables\n\nCreate a `.env.local` file to configure the development server:\n\n```env\nVITE_API_URL=http://localhost:5380\n```\n\n## Configuration\n\n| Variable | Description | Default |\n|----------|-------------|---------|\n| `TECHNITIUM_API_URL` | URL of your Technitium DNS Server | `http://localhost:5380` |\n\n## Tech Stack\n\n- React 19\n- TypeScript\n- Tailwind CSS v4\n- shadcn/ui\n- React Router v7\n- Vite\n\n## Why \"Isotope\"?\n\nTechnitium is element 43 on the periodic table. In nature, it has no stable isotopes. Now it has one.\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrudge%2Fisotope","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrudge%2Fisotope","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrudge%2Fisotope/lists"}