๐Ÿ” LockIt

Take Control of Your Privacy

A powerful desktop application that locks specific applications behind a password or PIN, helping you maintain focus, secure your system from prying eyes, and secure sensitive apps.

LockIt Logo Version Platform

License: MIT Electron Built with Love

--- ## ๐Ÿ“‹ Table of Contents - [โœจ Features](#-features) - [๐Ÿš€ Quick Start](#-quick-start) - [๐Ÿ’ป System Requirements](#-system-requirements) - [๐Ÿ“ฑ How It Works](#-how-it-works) - [๐Ÿ”ง Configuration](#-configuration) - [๐Ÿ›ก๏ธ Use Cases](#๏ธ-use-cases) - [๐Ÿ”ง Development](#-development) - [๐Ÿ”’ Security Features](#-security-features) - [๐Ÿšง Limitations](#-limitations) - [โ“ FAQ](#-faq) - [๐Ÿ› ๏ธ Troubleshooting](#๏ธ-troubleshooting) - [๐Ÿค Contributing](#-contributing) - [๐Ÿ“„ License](#-license) ## โœจ Features - ๐Ÿ”’ **Lock Any Application**: Select from running apps and protect them with a PIN - ๐Ÿ” **Background Monitoring**: Quietly monitors for locked apps and intervenes when needed - ๐Ÿ›ก๏ธ **Full-Screen Lock Overlay**: Prevents access until the correct PIN is entered - โš™๏ธ **Customizable Settings**: Set your own PIN and unlock duration - ๐Ÿ’พ **Local Storage**: All data stored locally and securely on your device - ๐ŸŽฏ **Multiple Use Cases**: Perfect for focus, parental controls, or security ## ๐Ÿš€ Quick Start ### ๐Ÿ“ฆ Installation Options #### Option 1: From Source (Recommended for Development) ```bash # Clone the repository git clone https://github.com/jay-bman725/LockIt.git cd LockIt # Install dependencies npm install # Run the application npm start ``` #### Option 2: Download Pre-built Releases > ๐Ÿ”„ **Coming Soon**: Download ready-to-use installers from our [Releases page](https://github.com/jay-bman725/LockIt/releases) ## ๐Ÿ’ป System Requirements | Platform | Minimum Requirements | Status | |----------|---------------------|---------| | **Windows** | Windows 10 (64-bit), 4GB RAM, 100MB disk space | โŒ **NOT WORKING** | | **macOS** | macOS 10.15 Catalina, 4GB RAM, 100MB disk space | โœ… **WORKING** | | **Linux** | Ubuntu 18.04+ / CentOS 8+, 4GB RAM, 100MB disk space | โ“ **UNKNOWN** | > โš ๏ธ **Important Platform Notes**: > - **Windows**: Functionality is currently **NOT WORKING** > - **Linux**: Functionality status is **UNKNOWN** and untested > - **macOS**: Fully functional and tested **Note**: LockIt requires administrative privileges for optimal functionality. ### ๐ŸŽฏ First Run Setup 1. **Welcome Screen**: Launch LockIt and complete the onboarding process 2. **Choose Applications**: Navigate to "Available Apps" tab to view running applications 3. **Lock Applications**: Click "๐Ÿ”’ Lock" on applications you want to protect 4. **Customize PIN**: Go to "Settings" tab to set your custom PIN (default: 1234) 5. **Start Protection**: Click "โ–ถ๏ธ Start Monitoring" to begin background protection 6. **Test Lock**: Try opening a locked app to see the lock screen in action > ๐Ÿ’ก **Pro Tip**: Start with locking a non-essential app to test the functionality before locking critical applications. ## ๐Ÿ“ฑ How It Works 1. **Select Apps to Lock**: Browse running applications and choose which ones to protect 2. **Background Monitoring**: LockIt monitors active windows in the background 3. **Lock Screen Activation**: When a locked app is detected, a full-screen overlay appears 4. **PIN Authentication**: Enter your PIN to unlock the app temporarily 5. **Temporary Access**: Apps stay unlocked for your configured duration ## ๐Ÿ”ง Configuration ### Settings Panel - **Security PIN**: Set a custom PIN (minimum 3 characters) - **Unlock Duration**: How long apps stay unlocked after entering PIN - 30 seconds to 1 hour options available ### Data Storage - Settings stored locally using `electron-store` - No data sent to external servers - PIN stored securely on your device ## ๐Ÿ›ก๏ธ Use Cases ### ๐ŸŽฏ Focus & Productivity Lock distracting apps like: - Social media applications - Games and entertainment - Chat applications - Video streaming apps ### ๐Ÿ‘€ Protect from prying eyes Does your roommate look through your computer? Now you can block them with: - A secure 5-digit PIN - Lockdown screen - Only 10 PIN code tries until system lockdown ### ๐Ÿ”’ Security Add an extra layer to: - Banking applications - Password managers - Work applications - Sensitive documents ## ๐Ÿ”ง Development ### Available Scripts - `npm start`: Launch the application - `npm run dev`: Launch with debugging enabled ### Dependencies - **electron**: Desktop app framework - **active-win**: Window detection - **ps-list**: Process monitoring - **electron-store**: Local data storage ## ๐Ÿ”’ Security Features ### Lock Screen Protection - Full-screen overlay prevents access - Keyboard shortcut blocking - Anti-escape mechanisms - Context menu disabled - Window focus management ### Data Security - Local storage only - No network communication - Encrypted settings storage - No telemetry or tracking ## ๐Ÿšง Limitations - **Not Unbreakable**: Technical users can bypass protections - **Process-Level**: Works at application level, not system level - **Active Monitoring**: Requires LockIt to be running - **Platform-Specific**: Some features may vary by OS ## โ“ FAQ
Can LockIt be bypassed by tech-savvy users?
Yes, LockIt is designed for productivity and roommate protection, not as a security solution against determined attackers. Users with system knowledge can potentially bypass the locks.
Does LockIt work with all applications?
LockIt works with most desktop applications but may have limitations with: - System applications - Full-screen games - Applications with elevated privileges
What happens if I forget my PIN?
You can reset your PIN by activating LockIt, then entering your PIN wrong 10 in a row, then entering your master password in the security lockdown screen, then choose the option to make a new PIN.
Does LockIt consume a lot of system resources?
No, LockIt is designed to be lightweight: - Memory usage: ~50-100MB - CPU usage: <1% during monitoring - No background network activity
Can I schedule when apps are locked?
Scheduled locking is planned for version 1.2.0 Currently, apps are locked immediately when monitoring starts.
## ๐Ÿ› ๏ธ Troubleshooting ### Common Issues #### LockIt won't start ```bash # Check Node.js version (requires 16+) node --version # Reinstall dependencies npm install --force # Run with debug output npm run dev ``` #### Lock screen doesn't appear 1. **Check permissions**: Ensure LockIt has accessibility permissions 2. **Restart monitoring**: Stop and restart the monitoring service 3. **Update app list**: Refresh the available applications list #### Applications are still accessible 1. **Verify lock status**: Check that the app shows as "๐Ÿ”’ Locked" in the interface 2. **Check monitoring**: Ensure "โ–ถ๏ธ Start Monitoring" is active 3. **Restart LockIt**: Sometimes a restart resolves detection issues #### Performance issues 1. **Close unnecessary apps**: Reduce the number of monitored applications 2. **Check system resources**: Ensure sufficient RAM and CPU available 3. **Update dependencies**: Run `npm update` to get latest versions ### Getting Help If you encounter issues not covered here: 1. Check [GitHub Issues](https://github.com/jay-bman725/LockIt/issues) for existing solutions 2. Create a new issue with detailed system information 3. Include error logs from the console (available in dev mode) ## ๐Ÿค Contributing We love contributions from the community! Whether you're fixing bugs, adding features, or improving documentation, your help is appreciated. ### ๐Ÿš€ Quick Contribution Guide 1. **Fork & Clone** ```bash git clone https://github.com/jay-bman725/LockIt.git cd LockIt npm install ``` 2. **Create Feature Branch** ```bash git checkout -b feature/amazing-feature ``` 3. **Make Changes** - Follow the existing code style - Add tests for new features - Update documentation as needed 4. **Test Thoroughly** ```bash npm run dev # Test your changes npm run lint # Check code style ``` 5. **Submit Pull Request** - Use a clear, descriptive title - Explain what changes you made and why - Reference any related issues ### ๐ŸŽฏ Areas We Need Help - **๐Ÿ› Bug Fixes**: Check our [issues page](https://github.com/jay-bman725/LockIt/issues) - **๐Ÿ“š Documentation**: Help improve guides and API docs - **๐Ÿงช Testing**: Add unit tests and integration tests - **๐ŸŽจ UI/UX**: Design improvements and accessibility enhancements - **๐ŸŒ Localization**: Translate LockIt to other languages ### ๐Ÿ“‹ Development Guidelines - **Code Style**: We use ESLint with standard configuration - **Documentation**: Update README, Changelog, and code comments ## ๐Ÿ“„ License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ## โš ๏ธ Disclaimer LockIt is designed as a productivity tool and a utility to remove prying eyes. It should not be considered a security solution for protecting against determined attackers or technical users who understand how to bypass application-level restrictions. ## ๐Ÿ™‹โ€โ™‚๏ธ Support & Community ### ๐Ÿ“ž Get Help - ๐Ÿ› **Bug Reports**: [GitHub Issues](https://github.com/jay-bman725/LockIt/issues) - ๐Ÿ’ฌ **Discussions**: [GitHub Discussions](https://github.com/jay-bman725/LockIt/discussions) - ๐Ÿ“– **Documentation**: [Wiki](https://github.com/jay-bman725/LockIt/wiki) ### ๐ŸŒŸ Stay Connected - โญ **Star us on GitHub** if you find LockIt useful ---

๐Ÿ” LockIt - Taking Control of Your Digital Privacy

Made with โค๏ธ for productivity, focus, and digital wellness

Get Started โ€ข Features โ€ข Contribute โ€ข Download

GitHub stars GitHub forks

If LockIt helps you stay focused, consider giving it a โญ on GitHub!