(function () { function initLockTightNav() { const nav = document.getElementById("lt-nav"); if (!nav) return; /* ===================================== Move navbar directly into BODY ===================================== */ if (nav.parentElement !== document.body) { document.body.appendChild(nav); } /* ===================================== NAVBAR VISIBILITY ===================================== */ function updateNav() { const scrollY = window.pageYOffset || document.documentElement.scrollTop || 0; /* * Keep navbar hidden at the * very top of the page. */ if (scrollY <= 40) { nav.classList.remove( "lt-nav-visible" ); return; } /* * Show navbar once scrolling * has started. */ nav.classList.add( "lt-nav-visible" ); } window.addEventListener( "scroll", updateNav, { passive: true } ); window.addEventListener( "resize", updateNav, { passive: true } ); updateNav(); /* ===================================== SECTION NAVIGATION ===================================== */ document .querySelectorAll( '#lt-nav a[href^="#"]' ) .forEach(function (link) { link.addEventListener( "click", function (event) { const targetId = this .getAttribute("href") .substring(1); const target = document.getElementById( targetId ); if (!target) return; event.preventDefault(); const navHeight = nav.offsetHeight || 44; const targetPosition = target.getBoundingClientRect().top + window.pageYOffset - navHeight; window.scrollTo({ top: targetPosition, behavior: "smooth" }); } ); }); } /* ===================================== INITIALISE ===================================== */ if ( document.readyState === "loading" ) { document.addEventListener( "DOMContentLoaded", initLockTightNav ); } else { initLockTightNav(); } /* Carrd delayed rendering */ setTimeout( initLockTightNav, 500 ); setTimeout( initLockTightNav, 1500 ); })();

LOCKTIGHT FOR MACOS

Icon: LockTight Logo

Lock your apps.
Keep your
privacy.


LockTight puts a password between your apps and anyone using your Mac.

Photos · Messages · Mail · Notes · Finance apps · Work apps

Requires macOS 13 or later · Notarized by Apple · Not on the Mac App Store


OVERVIEW

One password.
Protect all your apps.


No config files, no terminal commands. Just your master password standing between anyone and your protected apps.

Image: Main app screen showing settings, help, about and window of locked apps in drag and drop window



BUILT FOR MACOS

Native where you
need it.

LockTight follows your system appearance and lives where you already look — the menu bar and the Dock — so locking and unlocking never means opening the app. Backup and auto-save your setup.

Icon: Menu bar lock and unlock icons

FLEXIBLE LOCKING

Choose when your
apps lock.

Turn on whichever combination feels right, built and laid out like System Settings because it's made the same way.

Icons: Main app window lock status icons


Icon: Setting screen of lock trigger toggles for lock on minmize, window close, screensaver, log off, shutdown

SELF PROTECTION

LockTight protects
itself too.

When self-protection is enabled, LockTight can’t simply be deleted or disabled. Turning protection off requires your master password.

Icon: Setting screen of app protection toggles for launch at login, require password to quit, prevent uninstalling without a password

PRIVACY

Nothing about your password leaves your Mac.


No account. No cloud sync. No analysis. Verification happens on-device, every time.

Image: Your master password is never stored. LockTight keeps a salted, per-user derived verifier instead - one-way, and useless without your password.
Image: An additional device-only secret lives in the macOS Keychain, not in a settings file that could be copied off the machine.
Image: Not in preferences, not in exported settings files — nowhere you could stumble across it later.
Image: An additional device-only secret lives in the macOS Keychain, not in a settings file that could be copied off the machine.

Read the privacy policy >


COMMON QUESTIONS

Useful answers.

FAQ
No. Password verification is entirely local — there's no server in the loop at all.
Yes. Add as many supported apps to the Locked Applications panel as you need.
There is no back door or password recovery service. That’s intentional — your master password is the key to your protected apps. Keep your hint memorable and maintain your own recovery plan.
No. LockTight stores only a derived, salted verifier — never the password itself, in preferences or in exports.
Yes, from Settings. Reset always asks for confirmation and your current master password first.
Its core job — watching for and blocking other apps from launching — needs access the App Store's sandbox doesn't allow. It's distributed directly instead, signed and notarized by Apple.
(function(){ const settings={ instanceId:"carrd-faq-519bljrxy3d", questionColor:"#ffffff", answerColor:"#ffffff", style:"chevron-down", position:"right", textAlign:"left", size:14, weight:2, border:"0.15", questionSize:"1rem", answerSize:"1rem", bgEnabled:false, bgColor:"#1e293b", bgWidth:"480px", bgRadius:0, bgPadding:32, scrollReveal:false, scrollReplay:"once", scrollHoldTime:1500 }; function getPath(style,open){ if(style==="chevron-right"){ return open ? "M3 5 L8 10 L13 5" : "M5 3 L11 8 L5 13"; } if(style==="plus"){ return open ? "M3 8 L13 8" : "M8 3 L8 13 M3 8 L13 8"; } if(style==="tick"){ return open ? "M3 8.5 L6.5 12 L13 4.5" : "M4 8 L12 8"; } if(style==="dot"){ return "M8 8 L8 8"; } return open ? "M3 11 L8 6 L13 11" : "M3 5 L8 10 L13 5"; } function updateIcon(item,open){ const path=item.querySelector( ".carrd-faq-icon path" ); if(!path){ return; } path.setAttribute( "d", getPath(settings.style,open) ); } function setImportant(el,prop,value){ el.style.setProperty( prop, value, "important" ); } function clearImportant(el,prop){ el.style.removeProperty(prop); } function clearRevealState(answer){ if(answer._revealOpenTimer){ clearTimeout( answer._revealOpenTimer ); answer._revealOpenTimer=null; } if(answer._revealCloseTimer){ clearTimeout( answer._revealCloseTimer ); answer._revealCloseTimer=null; } clearImportant( answer, "display" ); clearImportant( answer, "overflow" ); clearImportant( answer, "max-height" ); clearImportant( answer, "transition" ); } function openAnswer(answer,duration){ setImportant( answer, "display", "block" ); setImportant( answer, "overflow", "hidden" ); setImportant( answer, "max-height", "0px" ); setImportant( answer, "transition", "max-height "+duration+"ms ease" ); void answer.offsetHeight; setImportant( answer, "max-height", answer.scrollHeight+"px" ); } function closeAnswer(answer,duration,callback){ setImportant( answer, "max-height", answer.scrollHeight+"px" ); void answer.offsetHeight; setImportant( answer, "max-height", "0px" ); setTimeout(function(){ clearRevealState(answer); if(callback){ callback(); } },duration); } function setupScrollReveal(root){ if(!settings.scrollReveal){ return; } const prefersReducedMotion= window.matchMedia && window.matchMedia( "(prefers-reduced-motion: reduce)" ).matches; if(prefersReducedMotion){ return; } if(!("IntersectionObserver" in window)){ return; } const staggerStep=130; const openDuration=350; const holdDuration=settings.scrollHoldTime; let running=false; let hasRun=false; function runReveal(){ if(running){ return; } const items= Array.prototype.slice.call( root.querySelectorAll( ".carrd-faq-item" ) ) .filter(function(item){ return !item.classList.contains( "is-open" ); }); if(items.length===0){ return; } running=true; let remaining=items.length; function itemDone(){ remaining--; if(remaining<=0){ running=false; } } items.forEach(function(item,i){ const answer= item.querySelector( ".carrd-faq-answer" ); if(!answer){ itemDone(); return; } answer._revealOpenTimer= setTimeout(function(){ if(item.classList.contains( "is-open" )){ itemDone(); return; } openAnswer( answer, openDuration ); answer._revealCloseTimer= setTimeout(function(){ if(item.classList.contains( "is-open" )){ itemDone(); return; } closeAnswer( answer, openDuration, itemDone ); },openDuration+holdDuration); },i*staggerStep); }); } const observer= new IntersectionObserver( function(entries){ entries.forEach(function(entry){ if(!entry.isIntersecting){ return; } if(settings.scrollReplay==="once"){ if(!hasRun){ hasRun=true; runReveal(); observer.unobserve(root); } }else{ runReveal(); } }); }, { threshold:0 } ); observer.observe(root); } function init(){ const root= document.getElementById( settings.instanceId ); if(!root){ return; } root .querySelectorAll( ".carrd-faq-question" ) .forEach(function(button){ button.addEventListener( "click", function(){ const item= button.closest( ".carrd-faq-item" ); if(!item){ return; } const answer= item.querySelector( ".carrd-faq-answer" ); if(answer){ clearRevealState(answer); } const isOpen= item.classList.toggle( "is-open" ); button.setAttribute( "aria-expanded", isOpen ? "true" : "false" ); updateIcon( item, isOpen ); } ); }); setupScrollReveal(root); } if(document.readyState==="loading"){ document.addEventListener( "DOMContentLoaded", init ); }else{ init(); } })();



SUPPORT

Ask Anything.

LockTight is currently in development. Watch this space for release updates and use the contact form for information requests.

Bug reports, feature ideas, or questions before release — it all comes straight to us. We aim to respond in 48 hours.

LockTight is developed by Michael Edwards
All rights reserved © 2026
Check out our other macOS apps:

Image: DockStacks. Your Dock holds apps. DockStacks holds the whole job.
Image: AppRegister. Know what's installed on your Mac.
Image: StashTabs. Never loose your Safari tabs.


Icon: LockTight Logo

LockTight Privacy Policy.

Effective date: 5 September 2026LockTight is designed to work entirely on your Mac.

This policy explains, in plain terms, what that means in practice — what LockTight collects (almost nothing), what it stores locally, what permissions it needs and why, and how to reach us with questions. It's written to meet the disclosure expectations of Apple's App Store Connect / App Review Guidelines (5.1.1 Data Collection and Storage, and 5.1.4 Kids), even though LockTight is currently distributed directly rather than through the Mac App Store.

  1. Summary
    Data collected by the app and sent to us: none. Data stored, but only locally on your Mac: your password verifier and hint, your protected-apps list, your lock-trigger settings, and a device-only Keychain item used for Touch ID. Data you may choose to share with us directly: your name, email, and message, only if you use the Support form — which sends an email from your own Mail app, not from within LockTight. No analytics, advertising, or third-party tracking SDKs are included in the app.

  2. Information we collect
    LockTight does not collect personal data through the app itself, does not create user accounts, and does not use analytics, tracking, or third-party telemetry. The only information that reaches us is what you choose to send yourself, such as a support email.

  3. Data stored on your device
    A salted, one-way verifier derived from your master password (never the password itself), your optional password hint, your protected-apps list and lock-trigger settings, whether self-protection is currently on, and a device-only Keychain item for Touch ID. None of it is synced to iCloud or made available to anyone but you.

  4. Permissions LockTight uses, and why
    LockTight is not sandboxed because blocking launches of protected apps requires monitoring other running applications, which the App Sandbox does not permit — this is why it's distributed directly rather than through the sandboxed Mac App Store environment. A privileged helper daemon, installed with your permission, enforces uninstall protection by watching the LockTight.app bundle; it does not read your files or personal data. Touch ID/Keychain access is used only to gate unlocking, and always requires your master password to enable.

  5. Data sharing and third parties
    We do not sell, rent, or share any data, because we don't have any to share. LockTight contains no third-party analytics, advertising, or tracking SDKs of any kind.

  6. Data export and backup
    Exported settings include your general settings, lock triggers, and protected-apps list. Your master password is never included in an export — importing a file always requires unlocking with your current password first.

  7. Data retention and deletion
    Because nothing is collected by us, there is nothing on our side to retain or delete. On your Mac, use Reset (requires your master password) to clear stored settings, or remove the app to delete its local preferences and Keychain item.

  8. Children's privacy
    LockTight is a general-audience utility and is not directed at children. In line with COPPA and Apple's children's-privacy guidelines, we do not knowingly collect personal information from children under 13, and LockTight collects no personal data automatically from users of any age. If a parent or guardian believes a child has provided us information through the Support form, contact us below and we will promptly delete it.

  9. Your rights
    Because LockTight keeps your data on your own device, you're already in control of it: view, export, or delete it at any time from within the app. If you've contacted support directly, you may ask us to access, correct, or delete that correspondence at any time.

  10. Security
    Your master password is verified using PBKDF2-SHA256 with a per-user salt and is never stored in plaintext. An additional device-only Keychain-backed pepper protects against offline attacks on an exported settings file. Resetting LockTight, enabling Touch ID, or turning off self-protection always requires re-entering your master password.

  11. Changes to this policy
    This policy may be updated in future versions, with material changes reflected by a new effective date above and, where appropriate, noted in release notes.

  12. Contact
    > Developer: Michael Edwards
    > Contact Form: support@locktight [We aim to respond within 48 hours]
    > Website: LockTight


Download on the App Store

PRICING

Ready to lock things down.


No subscription. One-off purchase, yours across every Mac on your Apple Account.

LOCKTIGHT FOR MACOS

$4.99


One-time purchase



  • Unlimited stacks

  • Password-protected stacks

  • Transparency and hue controls

  • Global keyboard shortcuts

Download on the App Store


Requires macOS 13 or later. Direct download, notarized by Apple — not available on the Mac App Store. Price shown in US dollars.