feat: Redacted website + bilingual user manuals; migrate to HodeTech org#9
Conversation
Move the project to the HodeTech organization: - Go module github.com/cemililik/leakwatch -> github.com/HodeTech/leakwatch (go.mod + all internal imports / blank imports) - Web URLs -> github.com/HodeTech/Leakwatch (README, CLAUDE.md, CONTRIBUTING, CODE_OF_CONDUCT, docs/guides, architecture, ROADMAP) - Container image -> ghcr.io/hodetech/leakwatch (GHCR requires lowercase) - Homebrew tap -> HodeTech/tap (+ HodeTech/homebrew-tap) - GitHub Action -> HodeTech/leakwatch-action; action author -> HodeTech - .goreleaser.yml, Formula/leakwatch.rb, sonar-project.properties (org=hodetech), vscode/package.json (publisher=HodeTech) go build ./... , go vet ./... and detector+cmd tests pass. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add a GitHub Pages site and a complete bilingual user manual. Site (site/): vanilla HTML/CSS/JS, no build step, dark-only "Redacted" classified-dossier theme. Landing page with an animated scan-reveal hero, a docs portal (left nav, hash routing, search, Mermaid diagrams, right-hand on-this-page TOC), and a Formspree-backed contact page. Client-side EN/TR language switching (js/translations.js + js/i18n.js). Manuals (docs/user-manuals/): 52 pages (26 EN + 26 TR) across 8 sections, driven by _meta.yaml and written to match the actual CLI/behavior. Tooling: tools/site-build (isolated Go module, goldmark) compiles the Markdown manuals into site/js/manuals/*.js. .github/workflows/site-deploy.yml recompiles and deploys site/ to GitHub Pages. Note: contact.html posts to Formspree; replace YOUR_FORM_ID with a real form ID. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Address SonarCloud findings on the website: - site-deploy.yml: move GITHUB_TOKEN permissions from workflow level to the jobs that need them (build: contents:read; deploy: pages:write, id-token:write) and drop the unused configure-pages step (least privilege). - Self-host JetBrains Mono + Space Grotesk (latin + latin-ext) under site/assets/fonts with css/fonts.css; remove the Google Fonts <link>s and preconnects from index/docs/contact. No third-party requests, no missing-SRI hotspot, and the site works offline. latin-ext keeps Turkish glyphs correct. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Two internal links pointed at non-existent pages (caught by gemini-code-assist): - how-it-works (EN+TR): #/configuration/custom-rules -> #/detectors/custom-rules - installation (EN+TR): #/guides/docker -> #/ci-cd/docker-usage Regenerated the compiled manual bags. All 278 #/section/page cross-links now resolve against _meta.yaml. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Add a /playground page where visitors paste text and run Leakwatch's real detection patterns entirely client-side — nothing is uploaded. - Patterns are auto-extracted from internal/detector by tools/site-build (go/ast -> site/js/detectors.js); Go RE2 ports cleanly to JS regex. - js/scanner.js applies the keyword pre-filter + regex + Shannon entropy, with a min-match-length guard (kills context-gate noise) and a 64 KB cap. - 62 of 63 detectors run in the browser (entropy-gated generic and runtime custom rules stay CLI-only). Honest 'preview, not verified' framing. - Bilingual (EN/TR); reachable via the nav 'Try it' link and the hero/nav 'Run scan' buttons (now link to the playground). Also: hero CTA 'Read the dossier' -> 'Read the docs'; replace the empty redaction boxes in the detector index with real redacted detector names that reveal on hover (+ count fixed to 44). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
Important Review skippedToo many files! This PR contains 300 files, which is 150 over the limit of 150. To get a review, narrow the scope: ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (300)
You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Not up to standards ⛔🔴 Issues
|
| Category | Results |
|---|---|
| ErrorProne | 100 medium |
🟢 Metrics 226 complexity · 0 duplication
Metric Results Complexity 226 Duplication 0
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
There was a problem hiding this comment.
Code Review
This pull request migrates the project repository and module path from cemililik/Leakwatch to HodeTech/Leakwatch, involving updates to go.mod, internal imports, and various configuration files. It also introduces a comprehensive set of user manuals in both English and Turkish. Review feedback correctly identifies several broken internal links within the new documentation where pages were referenced under incorrect sections, specifically for custom rules and Docker usage guides, and provides actionable suggestions to fix them in both language versions.
| - A **redacted** representation safe for output. | ||
| - Optional extra metadata (e.g. account ID for an AWS key). | ||
|
|
||
| Leakwatch ships **63 built-in detectors** across 60 packages, covering cloud providers, AI APIs, payment platforms, databases, messaging tools, version control, and more. You can add your own patterns via [custom YAML rules](#/configuration/custom-rules). |
There was a problem hiding this comment.
The link to custom rules is incorrect. According to the structure defined in _meta.yaml, the custom-rules page is located under the detectors section, not configuration.
| Leakwatch ships **63 built-in detectors** across 60 packages, covering cloud providers, AI APIs, payment platforms, databases, messaging tools, version control, and more. You can add your own patterns via [custom YAML rules](#/configuration/custom-rules). | |
| Leakwatch ships **63 built-in detectors** across 60 packages, covering cloud providers, AI APIs, payment platforms, databases, messaging tools, version control, and more. You can add your own patterns via [custom YAML rules](#/detectors/custom-rules). |
| - [How Verification Works](#/verification/how-verification-works) | ||
| - [Configuration File](#/configuration/config-file) | ||
| - [CLI Reference](#/reference/cli-reference) | ||
| - [Custom Rules](#/configuration/custom-rules) |
|
|
||
| :::tip | ||
| For Docker-specific usage patterns, including scanning remote Git repositories and passing credentials securely, see [Using Docker](#/guides/docker). | ||
| ::: |
There was a problem hiding this comment.
The link to the Docker guide is incorrect. The docker-usage page is located under the ci-cd section, and there is no guides section in the documentation structure.
| ::: | |
| For Docker-specific usage patterns, including scanning remote Git repositories and passing credentials securely, see [Using Docker](#/ci-cd/docker-usage). |
| ## See also | ||
|
|
||
| - [Quick Start](#/getting-started/quick-start) | ||
| - [Using Docker](#/guides/docker) |
|
|
||
| Leakwatch pulls the image manifest, iterates over each layer in order, and extracts the files within each layer. Each file's content is run through the same detection pipeline as a filesystem scan. Path exclusions from `filter.exclude-paths` in `.leakwatch.yaml` apply here, limiting which file paths inside layers are examined. | ||
|
|
||
| ## Flags |
There was a problem hiding this comment.
| - Çıktı için güvenli olan **maskelenmiş** bir gösterim. | ||
| - İsteğe bağlı ek meta veri (örneğin bir AWS anahtarı için hesap kimliği). | ||
|
|
||
| Leakwatch, 60 paket genelinde **63 yerleşik dedektör** ile birlikte gelir; bulut sağlayıcılarını, yapay zekâ API'lerini, ödeme platformlarını, veritabanlarını, mesajlaşma araçlarını, sürüm kontrolünü ve daha fazlasını kapsar. [Özel YAML kuralları](#/configuration/custom-rules) aracılığıyla kendi desenlerinizi ekleyebilirsiniz. |
There was a problem hiding this comment.
Özel kurallar bağlantısı hatalı. _meta.yaml dosyasındaki yapıya göre custom-rules sayfası configuration değil detectors bölümü altındadır.
| Leakwatch, 60 paket genelinde **63 yerleşik dedektör** ile birlikte gelir; bulut sağlayıcılarını, yapay zekâ API'lerini, ödeme platformlarını, veritabanlarını, mesajlaşma araçlarını, sürüm kontrolünü ve daha fazlasını kapsar. [Özel YAML kuralları](#/configuration/custom-rules) aracılığıyla kendi desenlerinizi ekleyebilirsiniz. | |
| Leakwatch, 60 paket genelinde **63 yerleşik dedektör** ile birlikte gelir; bulut sağlayıcılarını, yapay zekâ API'lerini, ödeme platformlarını, veritabanlarını, mesajlaşma araçlarını, sürüm kontrolünü ve daha fazlasını kapsar. [Özel YAML kuralları](#/detectors/custom-rules) aracılığıyla kendi desenlerinizi ekleyebilirsiniz. |
| - [Doğrulama Nasıl Çalışır](#/verification/how-verification-works) | ||
| - [Yapılandırma Dosyası](#/configuration/config-file) | ||
| - [CLI Referansı](#/reference/cli-reference) | ||
| - [Özel Kurallar](#/configuration/custom-rules) |
|
|
||
| :::tip | ||
| Uzak Git depolarını tarama ve kimlik bilgilerini güvenli biçimde geçirme dahil Docker'a özgü kullanım kalıpları için [Docker Kullanımı](#/guides/docker) sayfasına bakın. | ||
| ::: |
There was a problem hiding this comment.
Docker rehberi bağlantısı hatalı. docker-usage sayfası ci-cd bölümü altındadır ve dokümantasyon yapısında guides bölümü bulunmamaktadır.
| ::: | |
| Uzak Git depolarını tarama ve kimlik bilgilerini güvenli biçimde geçirme dahil Docker'a özgü kullanım kalıpları için [Docker Kullanımı](#/ci-cd/docker-usage) sayfasına bakın. |
| ## Ayrıca bakın | ||
|
|
||
| - [Hızlı Başlangıç](#/getting-started/quick-start) | ||
| - [Docker Kullanımı](#/guides/docker) |
|
|
||
| Leakwatch imaj manifestini çeker, her katmanı sırayla işler ve her katmandaki dosyaları çıkarır. Her dosyanın içeriği, dosya sistemi taramasıyla aynı tespit hattından geçirilir. `.leakwatch.yaml` içindeki `filter.exclude-paths` yol dışlamaları burada da geçerlidir ve katmanlar içinde hangi dosya yollarının inceleneceğini sınırlar. | ||
|
|
||
| ## Bayraklar |
There was a problem hiding this comment.
Docker rehberi bağlantısı hatalı. ci-cd bölümü altındaki docker-usage sayfasına işaret etmelidir.
| ## Bayraklar | |
| Uzak Git depolarını tarama ve kimlik bilgilerini güvenli biçimde geçirme dahil Docker'a özgü kullanım kalıpları için [Docker Kullanımı](#/ci-cd/docker-usage) sayfasına bakın. |
- Delegate the redaction hover-peek from document instead of binding per-node, so it survives i18n re-renders that replace nodes via innerHTML on a language switch (the headline word stopped revealing after switching languages). - Replace the now-redundant 'hover a redaction to reveal it' hint with the concept line (the hero animation already reveals the secrets). - Add 'maintained by HodeTech' attribution to the footer tagline, copyright, and hero eyebrow (EN + TR, across index/contact/playground). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|


Overview
Two related changes:
cemililikreferences to the HodeTech organization.1 · Website (
site/) + manuals (docs/user-manuals/)docs.html): left nav, hash routing, search, Mermaid diagrams, right-hand "on this page" TOC with scroll-spy.contact.html): Formspree-backed form (honeypot, JS + no-JS) + GitHub channels.js/translations.js+js/i18n.js).--excludeonly onscan fs, etc.).tools/site-build(isolated Go module, goldmark) compiles Markdown →site/js/manuals/*.js..github/workflows/site-deploy.ymlrecompiles and deployssite/to Pages.2 · HodeTech migration
github.com/cemililik/leakwatch→github.com/HodeTech/leakwatch(go.mod + all imports).github.com/HodeTech/Leakwatch.ghcr.io/hodetech/leakwatch(GHCR requires lowercase).HodeTech/tap; GitHub Action →HodeTech/leakwatch-action..goreleaser.yml,Formula,action.yml,sonar-project.properties(orghodetech),vscode/package.json(publisherHodeTech).Verification
go build ./...✓ ·go vet ./...✓ · detector + cmd tests ✓Follow-ups for the maintainer
contact.html(YOUR_FORM_ID).HodeTech/homebrew-tap,HodeTech/leakwatch-action.Notes
docs/05-ROADMAP.mdkeeps one historicalcemililik_LeakwatchSonarCloud reference (dated record, intentionally left).site-concepts/) are left on disk but untracked — not included in this PR. Say the word to add or delete them.🤖 Generated with Claude Code