[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-96135":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":9,"rankLanguage":9,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":21,"hasPages":19,"topics":22,"createdAt":9,"pushedAt":9,"updatedAt":23,"readmeContent":24,"aiSummary":25,"trendingCount":15,"starSnapshotCount":15,"syncStatus":26,"lastSyncTime":27,"discoverSource":28},96135,"mactap-app","jaskirat1616\u002Fmactap-app","jaskirat1616","MacTap — knock your MacBook to run shortcuts",null,"Swift",270,10,196,1,0,70,3.12,"MIT License",false,"main",true,[],"2026-09-21 02:04:30","\u003Cp align=\"center\">\n  \u003Cimg src=\"website\u002Fassets\u002Ficon.png\" width=\"140\" alt=\"MacTap app icon\">\n\u003C\u002Fp>\n\n\u003Ch1 align=\"center\">MacTap\u003C\u002Fh1>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>Knock the MacBook. The app does the rest.\u003C\u002Fstrong>\u003Cbr>\n  \u003Ca href=\"https:\u002F\u002Fmactap.vercel.app\">mactap.vercel.app\u003C\u002Fa>\n  ·\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjaskirat1616\u002Fmactap-app\u002Freleases\u002Flatest\">Download\u003C\u002Fa>\n  ·\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjaskirat1616\u002Fmactap-app\">GitHub\u003C\u002Fa>\n\u003C\u002Fp>\n\nMacTap lives in the menu bar and turns taps on the chassis — or the desk underneath a still laptop — into shortcuts. One, two, or three knocks. Copy, paste, Accept, screenshots, media, or whatever you map.\n\nRequires a MacBook whose motion sensor is exposed as an SPU HID device: **M2 and later**, or **M1 Pro \u002F Max \u002F Ultra**. The original M1 Air (`MacBookAir10,1`) and some other M1 models do not publish the accelerometer HID report MacTap reads, so knocks cannot be detected. macOS 14.6 or later.\n\nMacTap does **not** fall back to rebinding arrow keys when the sensor is missing.\n\n## Install\n\n1. Get **2.1.2** from the [website](https:\u002F\u002Fmactap.vercel.app) or the [latest GitHub release](https:\u002F\u002Fgithub.com\u002Fjaskirat1616\u002Fmactap-app\u002Freleases\u002Flatest).\n2. Prefer **MacTap-2.1.2.zip**. Unzip and drag **MacTap.app** into `\u002FApplications`.\n3. Or open **MacTap-2.1.2.dmg** and drag **MacTap** into Applications — do not run it from the disk image.\n4. Open MacTap from Applications (or Spotlight).\n5. Turn on **Accessibility** when asked, so knocks can send shortcuts.\n\nDetection itself does not need Accessibility. Actions do.\n\n### macOS signature check\n\nThe **app** is Developer ID signed and notarized. Gatekeeper evaluates `MacTap.app`, not the `.dmg` wrapper. A `codesign --verify` on the disk image itself will say it is unsigned even when the build is good.\n\nAfter you copy the app into Applications:\n\n```bash\nspctl --assess --type execute --verbose \u002FApplications\u002FMacTap.app\n```\n\nYou want `accepted` and `source=Notarized Developer ID`. If a tool blocks the `.dmg`, install from the **zip** instead.\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd align=\"center\" width=\"33%\">\u003Cimg src=\"website\u002Fpress\u002Fproduct-hunt\u002F01-hero.png\" alt=\"MacTap hero\">\u003C\u002Ftd>\n    \u003Ctd align=\"center\" width=\"33%\">\u003Cimg src=\"website\u002Fpress\u002Fproduct-hunt\u002F02-knocks.png\" alt=\"Knock shortcuts\">\u003C\u002Ftd>\n    \u003Ctd align=\"center\" width=\"33%\">\u003Cimg src=\"website\u002Fpress\u002Fproduct-hunt\u002F03-presets.png\" alt=\"Presets\">\u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n## Use\n\n- **Anywhere** — one, two, or three knocks on the chassis or desk. Same idea as Knock.\n- **Left & Right** — each edge is a different set of actions.\n- **Presets** — Daily, Coding, Capture, Media, Focus.\n- **Per app** — Cursor can get Accept \u002F Reject \u002F Save while everything else stays on Daily.\n\nOpen **Settings** from the menu extra to change layout, actions, and sensitivity.\n\n## Build from source\n\n```bash\nbrew install xcodegen\nxcodegen generate\nxcodebuild -project MacTap.xcodeproj -scheme MacTap -configuration Debug \\\n  CONFIGURATION_BUILD_DIR=\u002FApplications\nopen \u002FApplications\u002FMacTap.app\n```\n\nA signed, notarized build:\n\n```bash\n.\u002FScripts\u002Fship.sh\n```\n\nThat writes `dist\u002FMacTap-\u003Cversion>.dmg`. Notarization uses Xcode’s Developer ID export. Signing the **disk image** (not just the app) also needs App Store Connect API credentials: `APP_STORE_CONNECT_KEY_ID`, `APP_STORE_CONNECT_ISSUER_ID`, and `APP_STORE_CONNECT_API_KEY_P8` (or `AuthKey_*.p8`).\n\n## Privacy\n\nTaps are classified on-device. Nothing is uploaded. Gesture maps live in local defaults.\n\n## License\n\nMIT\n","MacTap 是一款 macOS 菜单栏应用，利用 MacBook 内置运动传感器（SPU HID 加速度计）将机身或桌面的轻敲动作识别为快捷指令触发事件。支持单击、双击、三击识别，并可按左右边缘区分操作区域，提供预设场景（如编码、截图、媒体控制）及应用级自定义快捷键。仅兼容搭载 M1 Pro\u002FMax\u002FUltra 或 M2 及更新芯片的 MacBook（需 macOS 14.6+），依赖 Accessibility 权限执行快捷操作。适用于追求免手触控、提升效率的开发者、内容创作者及无障碍交互场景。",2,"2026-09-10 02:30:09","CREATED_QUERY"]