A full-stack web application for secure password management with enterprise-grade encryption and intuitive user experience.
Lockr is a comprehensive password management solution built with modern web technologies. It provides users with a secure, encrypted vault to store, manage, and retrieve their credentials with military-grade AES encryption. The application features a responsive dark-themed UI and implements industry-standard security practices.
- 🔒 Advanced Security: AES encryption for all stored passwords
- 👤 User Authentication: Secure registration and login system with session management
- 🔍 Smart Search: Real-time filtering and search across all password entries
- ✏️ CRUD Operations: Create, Read, Update, Delete password entries
- 📱 Responsive Design: Mobile-friendly interface with clean look
- 🎯 User Experience: Intuitive single-page dashboard with all essential features
- 🔐 Password Visibility Toggle: Secure password viewing with click-to-reveal
- 🗑️ Bulk Operations: Efficient management of multiple entries
- Framework: Flask 2.0+ (Python)
- Database: SQLite 3.0+ with optimized schema design
- Authentication: Flask-Session with secure cookie handling
- Encryption: AES (Advanced Encryption Standard)
- Security: Input validation, SQL injection prevention, XSS protection
- Template Engine: Jinja2 with template inheritance
- Styling: Custom CSS with Bootstrap integration
- JavaScript: Vanilla ES6+ for dynamic interactions
- UI/UX: Modern design principles with clean look
- Pattern: MVC (Model-View-Controller)
- Design: Modular architecture with separation of concerns
- Scalability: Blueprint-ready structure for future expansion
- Python 3.8+
- Flask 2.0+
- SQLite 3.0+
- Modern web browser (Chrome, Firefox, Safari, Edge)
lockr/
├── app.py # Main Flask application with routing logic
├── helpers.py # Utility functions (encryption, auth decorators)
├── lockr.db # SQLite database (auto-generated)
├── templates/
│ ├── layout.html # Base template with navigation
│ ├── index.html # Main dashboard
│ ├── login.html # Authentication page
│ ├── register.html # User registration
│ ├── edit.html # Password editing interface
│ └── error.html # Error handling page
└── static/
├── styles.css # Custom styling with dark theme
├── script.js # Client-side JavaScript
└── icon.png # Application branding
- Clone the repository
git clone https://github.com/saliqbashir/lockr.git
cd lockr- Create and activate Python Virtual Environment
python -m venv venv
source venv/bin/activate # On Linux/Mac
# OR
venv\Scripts\activate # On Windows- Install dependencies
pip install -r requirements.txt- Run Flask
flask run- Access the application
- Navigate to
http://localhost:5000 - Register a new account or login with existing credentials
- Navigate to
id(Primary Key)username(Unique)hash(Encrypted password)
id(Primary Key)user_id(Foreign Key)service_name(Website/Application)service_username(Account username)service_password(AES encrypted)
- Password Hashing: Werkzeug PBKDF2 for user authentication
- AES Encryption: Industry-standard encryption for stored passwords
- Session Management: Secure session handling with Flask-Session
- Input Validation: Comprehensive server-side validation
- CSRF Protection: Built-in protection against cross-site attacks
- SQL Injection Prevention: Parameterized queries throughout
- Responsive Layout: Optimized for desktop and mobile devices
- Real-time Search: Instant filtering without page reloads
- Password Visibility: Toggle between hidden and visible passwords
- Form Validation: Client-side and server-side validation
- Error Handling: User-friendly error messages and feedback
- Two-factor authentication (2FA)
- Password strength analyzer
- Secure password generator
- Data export/import functionality
- Multi-user admin panel
- API endpoints for mobile app integration
- Advanced audit logging
- Full-Stack Development: End-to-end web application development
- Security-First Approach: Implementation of encryption and security best practices
- Database Design: Normalized schema with proper relationships
- Clean Architecture: Modular, maintainable, and scalable code structure
- User Experience: Focus on intuitive design and smooth interactions
- Industry Standards: Following Flask conventions and Python best practices
This project is licensed under the MIT License - see the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.
For any questions or suggestions, please reach out through GitHub issues or connect with me on LinkedIn.


