{"id":29735734,"url":"https://github.com/kinshukjainn/zeroleaks","last_synced_at":"2026-04-11T01:35:36.875Z","repository":{"id":306060789,"uuid":"1024864759","full_name":"kinshukjainn/zeroleaks","owner":"kinshukjainn","description":"An Open source and beautifully simple, tool that shows how strong or weak your passwords really are. No sign-ups. No data saved. Just instant, actionable insights to help you stay safer online..","archived":false,"fork":false,"pushed_at":"2025-07-23T11:16:11.000Z","size":58,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-23T13:19:49.614Z","etag":null,"topics":["aws","awsamplify","awsrout","react","react-router","react-router-dom","security","tailwindcss","typescript","vite"],"latest_commit_sha":null,"homepage":"","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/kinshukjainn.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}},"created_at":"2025-07-23T11:10:23.000Z","updated_at":"2025-07-23T11:16:14.000Z","dependencies_parsed_at":"2025-07-23T13:19:53.726Z","dependency_job_id":null,"html_url":"https://github.com/kinshukjainn/zeroleaks","commit_stats":null,"previous_names":["kinshukjainn/zeroleaks"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/kinshukjainn/zeroleaks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kinshukjainn%2Fzeroleaks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kinshukjainn%2Fzeroleaks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kinshukjainn%2Fzeroleaks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kinshukjainn%2Fzeroleaks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kinshukjainn","download_url":"https://codeload.github.com/kinshukjainn/zeroleaks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kinshukjainn%2Fzeroleaks/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267015579,"owners_count":24021570,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-25T02:00:09.625Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["aws","awsamplify","awsrout","react","react-router","react-router-dom","security","tailwindcss","typescript","vite"],"created_at":"2025-07-25T14:00:51.907Z","updated_at":"2026-04-11T01:35:36.868Z","avatar_url":"https://github.com/kinshukjainn.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## 📜 Overview\n\n**ZeroLeaks** is a highly secure, fully client-side password analysis and generation tool designed for developers, security researchers, and privacy-conscious users. It combines cryptographic best practices, entropy-based analysis, and data breach intelligence  to help users understand and improve their password hygiene.\n\nBuilt with modern technologies including **React 19**, **TypeScript**, **TailwindCSS**, and **Vite**, it features a sleek, responsive UI, deep security insights, and real-time visualizations.\n\n---\n\n## ✨ Features\n\n### 🔍 Password Analyzer\n\n* Real-time strength evaluation (score 0–4)\n* Entropy-based complexity measurement\n* Crack time estimation for multiple attack scenarios\n* Suggestions and warnings for weak passwords\n* Checks if password appears in known data breaches via the Pwned Passwords API (SHA-1 k-Anonymity)\n\n### 🔐 Secure Password Generator\n\n* Generates military-grade random passwords (configurable length, symbols, digits, case)\n* Passphrase mode using word-based memorable phrases\n* Fisher-Yates shuffle for true randomness\n* Auto-analyzes strongest password from the batch\n\n### 📊 Security Visualization\n\n* Radar chart displaying:\n\n  * Password entropy\n  * Unique characters\n  * Crack resistance\n  * Reuse risk\n  * Overall score\n\n### 🧠 Local Password History\n\n* Non-reversible hashed history (SHA-1 hex digest simulation)\n* Tracks past scores, entropy, timestamps\n* Stored in memory for maximum privacy (not saved to disk)\n\n---\n\n## 🚀 Tech Stack\n\n| Layer           | Stack / Library                  |\n| --------------- | -------------------------------- |\n| Frontend        | React 19 + TypeScript            |\n| Styling         | TailwindCSS v4                   |\n| Routing         | React Router DOM v7              |\n| Icons           | React Icons (Remix, FontAwesome) |\n| Dev Environment | Vite 7 + ESLint + TSConfig       |\n| Password Check  | Native Web Crypto + Pwned API    |\n| Visualization   | HTML5 Canvas API                 |\n\n---\n\n## 🔧 Project Structure\n\n```\nzeroleaks/\n│\n├── components/              # Reusable UI logic \u0026 visualization\n├── hooks/                   # Custom hooks for state logic\n├── utils/                   # Password analysis, entropy, hash\n├── constants/               # Strength config mappings\n├── types/                   # TypeScript interfaces \u0026 types\n├── assets/                  # Static assets (if any)\n├── App.tsx                  # Main app logic \u0026 routing\n├── index.tsx                # Entry point\n└── styles/                  # Tailwind configuration\n```\n\n---\n\n## 🧪 How It Works\n\n### 🔎 Entropy Calculation\n\nEntropy is computed based on character set size and password length:\n\n```ts\nentropy = log2(charsetSize ^ passwordLength)\n```\n\nCharacter sets include lowercase, uppercase, digits, and symbols.\n\n### 🛡️ Score Mapping\n\nA simple scoring model evaluates passwords across:\n\n* Length ≥ 12 and ≥ 16\n* Mixed character types\n* High entropy\n* Low character repetition\n\nMapped to 5 categories: `Critical`, `Weak`, `Moderate`, `Strong`, `Fortress`.\n\n### ☠️ Pwned Check (Privacy-Preserving)\n\nYour password is hashed with SHA-1 and only the first 5 characters of the hash are sent to the API. This ensures:\n\n* **Zero exposure** of the full password\n* **Client-side only** execution\n* **Full anonymity**\n\n---\n\n\n### Docker command for pulling the image of the project :\n\n```Bash\ndocker pull kinshukdev/zeroleaksproduct:latest\n```\n\n## 🖥️ Development\n\n### 📦 Install dependencies\n\n```bash\nnpm install\n```\n\n### 🔧 Development server\n\n```bash\nnpm run dev\n```\n\n### ⚙️ Production build\n\n```bash\nnpm run build\n```\n\n### 🔍 Preview production\n\n```bash\nnpm run preview\n```\n\n### 🧹 Lint your code\n\n```bash\nnpm run lint\n```\n\n---\n\n## 📦 Dependencies\n\n* `react`, `react-dom` — UI logic\n* `react-router-dom` — Page navigation\n* `react-icons` — Iconography\n* `tailwindcss` — CSS utility engine\n* `@vitejs/plugin-react`, `vite` — Fast bundler\n* `typescript`, `eslint`, `typescript-eslint` — Type safety \u0026 linting\n* `@types/*` — Full IntelliSense and TS support\n\n---\n\n## 🔐 Privacy \u0026 Security\n\n* **Zero backend** — All logic is local in-browser\n* **No telemetry** — No analytics or tracking\n* **Ephemeral state** — No passwords or history saved to disk\n* **Quantum-resilient generation** (passphrase mode)\n\n---\n\n## 🧠 Ideal For\n\n* Developers creating secure login systems\n* Students learning about password security\n* Privacy-focused users wanting leak-free credentials\n* InfoSec professionals analyzing password health\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkinshukjainn%2Fzeroleaks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkinshukjainn%2Fzeroleaks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkinshukjainn%2Fzeroleaks/lists"}