{"id":51503452,"url":"https://github.com/dweep-desai/FaceGate-Mac","last_synced_at":"2026-07-26T19:00:34.204Z","repository":{"id":365890797,"uuid":"1266140657","full_name":"dweep-desai/FaceGate-Mac","owner":"dweep-desai","description":"World's first Face Authentication enabled MacOS App-locker. Unlock your Mac apps using Face , TouchID or password. Completely local and encrypted - your data never leaves your Mac","archived":false,"fork":false,"pushed_at":"2026-07-06T13:36:43.000Z","size":47129,"stargazers_count":301,"open_issues_count":14,"forks_count":19,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-06T15:14:40.636Z","etag":null,"topics":["app-lock","app-locker","apple-neural-engine","apple-silicon","biometric-authentication","computer-vision","face-id","face-recognition","macos","macos-app","macos-keychain","macos-security","open-source","security","swift","swiftui","touch-id"],"latest_commit_sha":null,"homepage":"https://dweep-desai.github.io/FaceGate-web/","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dweep-desai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","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},"funding":{"github":"dweep-desai"}},"created_at":"2026-06-11T11:00:56.000Z","updated_at":"2026-07-05T16:48:20.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/dweep-desai/FaceGate-Mac","commit_stats":null,"previous_names":["dweep-desai/facegate-mac"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/dweep-desai/FaceGate-Mac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dweep-desai%2FFaceGate-Mac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dweep-desai%2FFaceGate-Mac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dweep-desai%2FFaceGate-Mac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dweep-desai%2FFaceGate-Mac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dweep-desai","download_url":"https://codeload.github.com/dweep-desai/FaceGate-Mac/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dweep-desai%2FFaceGate-Mac/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35924054,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-07-26T02:00:06.503Z","response_time":89,"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":["app-lock","app-locker","apple-neural-engine","apple-silicon","biometric-authentication","computer-vision","face-id","face-recognition","macos","macos-app","macos-keychain","macos-security","open-source","security","swift","swiftui","touch-id"],"created_at":"2026-07-07T22:00:28.616Z","updated_at":"2026-07-26T19:00:34.187Z","avatar_url":"https://github.com/dweep-desai.png","language":"Swift","funding_links":["https://github.com/sponsors/dweep-desai"],"categories":["Security"],"sub_categories":["Text"],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"non-app-assets/logos/square_icon.png\" width=\"128\" alt=\"FaceGate Logo\"/\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003eFaceGate\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\u003cem\u003eApplication-level locking with on-device face recognition for macOS. Stronger than any other Mac app-locker.\u003c/em\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://img.shields.io/badge/platform-macOS%2014.0%2B-000000?style=flat-square\" alt=\"Platform\"/\u003e\n  \u003cimg src=\"https://img.shields.io/badge/swift-5.9%2B-F5A623?style=flat-square\" alt=\"Swift\"/\u003e\n  \u003cimg src=\"https://badgen.net/github/license/dweep-desai/FaceGate-Mac\" alt=\"License\"/\u003e\n  \u003cimg src=\"https://img.shields.io/github/stars/dweep-desai/FaceGate-Mac?style=flat-square\" alt=\"Stars\"/\u003e\n  \u003cimg src=\"https://badgen.net/github/release/dweep-desai/FaceGate-Mac\" alt=\"Release\"/\u003e\n  \u003cimg src=\"https://img.shields.io/github/downloads/dweep-desai/FaceGate-Mac/total?style=flat-square\" alt=\"Downloads\"/\u003e\n  \u003cimg src=\"https://komarev.com/ghpvc/?username=dweep-desai\u0026amp;repo=FaceGate-Mac\u0026amp;color=green\u0026amp;label=views\" alt=\"Views\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"non-app-assets/logos/banner.png\" alt=\"FaceGate Banner\" width=\"100%\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://dweep-desai.github.io/FaceGate-web/\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n    \u003cimg src=\"non-app-assets/website.svg\" alt=\"Website\" height=\"16\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\nFaceGate is a native macOS open-source applocker that brings FaceUnlock to your Mac. Lock sensitive applications behind FaceUnlock, Touch ID, or a secure password — all processed entirely on-device with zero telemetry.\n\nmacOS natively lacks the ability to restrict individual applications. Although other App-lockers exist, none of them use face recognition and are not as feature rich as FaceGate. \n\nAll controls in your hands - 100% free \u0026 open source , 100% malware free , 100% local . \n\u003cbr\u003e\n\u003cbr\u003e\n\n## Features\n\n- **App Locking** — Lock any installed app. FaceGate intercepts launches in real-time and prevents access until authenticated.\n- **On-Device Face Recognition** — Software-based face embedding pipeline running entirely on your Mac via the Apple Neural Engine. No cloud, no data leaving your device.\n- **Multi-Face Enrollment** — Enroll up to 3 different faces or alternate looks.\n- **External Camera Support** — Use an external USB webcam instead of the built-in camera.\n- **Liveness Detection** — Head-pose challenges (turn left, turn right, tilt) to prevent photo and video spoofing.\n- **Touch ID** — Seamless integration with macOS Touch ID.\n- **Password** — Encrypted PIN stored in the macOS Keychain.\n- **Per-App Session Timers** — Customizable unlock duration per app, with timer modes: count from last unlock or from when the app loses focus. Includes \"Keep Unlocked Indefinitely\" and \"Lock immediately\"\n- **Lock-on-Sleep** — Automatically lock all apps when your Mac sleeps or the screen locks.\n- **Uninstall Protection** — Prevents casual deletion by making the app bundle immutable and requires Admin Privileges to uninstall.\n- **Scheduled App-Lock/Unlock** — Time-based auto-lock and auto-unlock windows.\n- **FaceUnlock Schedule** — Disable face recognition during specific hours (e.g., when dark or in public spaces) to automatically fallback to Touch ID/Password.\n- **Auto-Optimization** — Automatically boost display brightness and trigger Center Stage to improve camera visibility and face detection accuracy.\n- **Customizable Sensitivity** — Fine-tune face recognition similarity thresholds to balance convenience and security.\n- **Menu Bar Control** — Monitor locked/unlocked apps and lock them directly from the menu bar popup.\n- **Secure Operations** — Require authentication to quit the application or configure settings to prevent unauthorized tampering.\n- **Emergency Kill Hotkey** — Global keyboard shortcut to instantly terminate.\n- **Menu Bar Agent** — Runs silently in the menu bar — no Dock icon, no distractions.\n\u003cbr\u003e\n\n## Demo\n\n\u003cvideo src=\"https://github.com/user-attachments/assets/faf3f058-8868-4b76-a880-5b66b208e583\" width=\"100%\" controls\u003e\u003c/video\u003e\n\n\u003cbr\u003e\n\n\n## Installation - Give the repo a ⭐️ so you don't miss future updates.\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://youtu.be/ZBuUl4wp9y0?si=JsenxBQgYtuoPlyb\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\u003cstrong\u003e▶ Watch the installation video\u003c/strong\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n### -Recommended: Automatic Install\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/dweep-desai/FaceGate-Mac/main/install.sh | bash\n```\n\nThe script automatically fetches the latest release from GitHub, installs FaceGate to your `/Applications` folder, and removes the Gatekeeper quarantine flag so it can run immediately.\n\n### -Or Manual Install\n\n\u003e [!IMPORTANT]\n\u003e FaceGate is not Apple-notarized, so simply double-clicking the manually downloaded app will not work. Follow the steps below:\n\n1. Download the latest `.dmg` from the [Releases](https://github.com/dweep-desai/FaceGate-Mac/releases) page.\n2. Mount the DMG volume and drag `FaceGate.app` to your `/Applications` folder.\n3. Open Terminal and remove the quarantine attribute by running:\n   ```bash\n   xattr -cr /Applications/FaceGate.app\n   ```\n4. You can now launch FaceGate normally!\n\n### -Or Homebrew\n\n```bash\nbrew install --cask dweep-desai/tap/facegate\n```\n\n\u003e ```bash\n\u003e xattr -cr /Applications/FaceGate.app\n\u003e ```\n\n\u003cbr\u003e\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/chart?repos=dweep-desai/FaceGate-Mac\u0026type=date\u0026legend=top-left)](https://www.star-history.com/?repos=dweep-desai%2FFaceGate-Mac\u0026type=date\u0026legend=top-left)\n\n## Security \u0026 Privacy\n\nFaceGate is designed as a **convenience layer against casual physical access**, not a defense against targeted attacks using high-fidelity spoofing. The built-in 2D FaceTime camera lacks depth sensing.\n\n- Face embeddings are AES-256-GCM encrypted and stored locally.\n- Encryption keys are held in the macOS Keychain.\n- The password uses SHA-256 with a random 32-byte salt, stored in the Keychain.\n- **Zero telemetry.** The app is fully offline and makes no network requests.\n- Face unlock sensitivity is configurable (default similarity threshold: 0.65).\n\n\u003cbr\u003e\n\n## Requirements\n\n- macOS 14.0 (Sonoma) or later\n- A Mac with a built-in or external camera (for face unlock)\n- Touch ID-compatible Mac (optional, for Touch ID fallback)\n\n\u003cbr\u003e\n\n## Building from Source\n\n```bash\ngit clone https://github.com/dweep-desai/FaceGate-Mac.git\ncd FaceGate-Mac\nbrew install xcodegen\nxcodegen generate\nopen FaceGate.xcodeproj\n```\n\nBuild with `Cmd+B` or `Cmd+R`. You may need to update the signing configuration for your development team.\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for the complete technical architecture and contribution guide.\n\n---\n\n## License\n\nMIT License. See [LICENSE](LICENSE).\n\n---\n\n\u003cp align=\"center\"\u003e\u003cem\u003eAuthored by Dweep Desai\u003c/em\u003e\u003c/p\u003e\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdweep-desai%2FFaceGate-Mac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdweep-desai%2FFaceGate-Mac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdweep-desai%2FFaceGate-Mac/lists"}