Skip to main content

Poottu App Icon

Poottu Password Manager

Poottu License: MIT Website GitHub Python OS Offline Release Downloads PyPI - Package Status

A fast, privacy-first, offline desktop password manager for Windows, macOS, and Linux. Poottu stores credentials locally with strong, authenticated encryption and offers a clean, modern UI with helpful workflows like live search, context-menu copy, timed clipboard clearing, and encrypted backup/restore.

Poottu_main_window

Features

  • Secure, offline-by-default local vault with modern, authenticated encryption.
  • Create/Unlock dialogs with readable light/dark designs and show/hide toggles.
  • Groups for organizing entries, with quick Edit Groups management.
  • Live search across Title, Username, URL, and Notes.
  • Entry preview panel with Show Password button.
  • Context menu actions: Copy Username, Password, URL, Old Password, and Notes.
  • Timed clipboard clear, plus an in-app HUD toast that confirms copy and clear timing.
  • Encrypted Backup and Restore from the File menu.
  • Build in Password Generator in add entry
  • Keyboard shortcuts:
    • Ctrl+N: Add Entry
    • Ctrl+G: Edit Groups
    • Ctrl+B: Backup
    • Ctrl+R: Restore
    • F2: Edit selected entry
    • Delete: Delete selected entry

Why the name “Poottu”?

Poottu (பூட்டு, pronounced Poo-ttu) means “lock” in Tamil, symbolizing security and protection. The name reflects the app’s purpose: a simple, safe, and trusted password manager.

Screenshots

  • Unlock dialog with modern card design and show/hide toggles.

  • Poottu_master_password_unlock

  • Manage Gruops Window.

  • Poottu_manage_groups

  • Add/Edit Entry

  • Poottu_Add_entry

Getting Started

Prerequisites

  • Python 3.12+
  • A virtual environment is recommended.

Installation

  1. Clone the repository and enter the project directory.

  2. Create and activate a virtual environment:

  • Windows:
    • python -m venv venv
    • venv\Scripts\activate
  • macOS/Linux:
    • python3 -m venv venv
    • source venv/bin/activate
  1. Install dependencies:
  • pip install -r requirements.txt
    • or
  • pip install "PySide6>=6.5.0" "argon2-cffi>=21.3.0" "pynacl>=1.5.0" "cryptography>=41.0.0" "platformdirs>=3.0.0" "zxcvbn>=4.5.0"

Running

  • From the project root:
    • python src/poottu/main.py

On first run without a vault, the Create window appears to set a master password. If a vault already exists, the Unlock window will prompt for the master password.

Usage

Create Master Password

  • Enter and confirm a strong password.
  • Requirements:
    • At least 12 characters.
    • Contains lowercase, uppercase, number, and special character.
  • The strength checker will guide improvements if needed.
  • Press Create to initialize the vault.

Unlock Vault

  • Enter master password and press Unlock or hit Enter.
  • Use Show to verify the password if necessary.
  • On error, an “Invalid master password” message appears.

Main Window Overview

  • Groups (left): pick a group to filter entries.
  • Search (top): filters entries across Title, Username, URL, and Notes as text is typed.
  • Entries (top-right): table with Title, Username, masked Password/Old Password, URL, Notes preview, and Expires.
  • Preview (bottom-right): see details for the selected entry and reveal/hide password.

File Menu

  • Add Entry: create new credential records.
  • Edit Groups: add, rename, and delete groups.
  • Backup: export an encrypted backup file.
  • Restore: import a previously exported encrypted backup.
  • Clipboard → Configure Clear Timer…: choose the seconds before the clipboard is auto-cleared (0 disables).
  • About: version, author, project URL, and full MIT license.
  • Exit: close the app.

Entries

  • Add Entry: choose Group, then fill Title, Username, Password, Old Password, URL, Notes, optional Expires.
  • Edit Entry: right-click rows or select a row and press F2.
  • Delete Entry: right-click rows or press Delete, then confirm.

Copying Safely

  • Right-click an entry row to copy Username/Password/URL/Old Password/Notes.
  • If the clipboard clear timer is enabled, copied data is automatically cleared after N seconds.
  • A small HUD toast displays “Copied. Will clear in Ns” or “Copied.” when timer is disabled.

Keyboard Shortcuts

  • Ctrl+N: Add Entry
  • Ctrl+G: Edit Groups
  • Ctrl+B: Backup
  • Ctrl+R: Restore
  • F2: Edit selected entry
  • Delete: Delete selected entry

Backup and Restore

  • Backup creates an encrypted backup file; keep it in a safe location.
  • Restore replaces current contents with the backup’s data after validation.
  • Recommended:
    • Maintain multiple backups.
    • Verify backups periodically by restoring in a separate environment.

Security Notes

  • Offline-first: no automatic syncing or telemetry; everything stays local unless a manual backup is performed.
  • Modern, authenticated encryption protects sensitive fields.
  • Strong key derivation and header checks ensure data integrity and tamper resistance.
  • Clipboard timer reduces the time secrets remain accessible to other apps.

Best Practices

  • Use unique, strong passwords for each account.
  • Rotate passwords periodically; use the Expires field to track changes.
  • Keep multiple encrypted backups in different secure locations.
  • Never share the master password; it cannot be recovered if lost.
  • Lock the OS session or close the app when stepping away from the computer.
  • Keep the OS and Python environment up to date for security patches.

Troubleshooting

  • Invalid master password:
    • Check keyboard layout, caps lock, and try again.
  • Clipboard not clearing:
    • Ensure the timer isn’t set to 0 (disabled) in File → Clipboard → Configure Clear Timer….
  • Text readability:
    • The app uses accessible styles for light/dark themes. If a custom OS theme overrides defaults, consider adjusting system appearance for contrast.

Contributing

  • Bug reports, feature requests, and pull requests are welcome.
  • Please discuss large changes via an issue first.

License

MIT License

Copyright (c) 2025 Manikandan D

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Acknowledgements

  • Thanks to the open-source ecosystem for libraries and inspiration that make secure, user-friendly tools possible.

Project

Website: https://due.im/poottu/ Version: 1.0.0 Author: Manikandan D

Metadata

Release files for poottu 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for poottu 1.0.1
File Size Uploaded Provenance
poottu-1.0.1.tar.gz 255.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for poottu 1.0.1
File Interpreter ABI Platform
poottu-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 509.4 kB

Release files / poottu-1.0.1.tar.gz

Download URL poottu-1.0.1.tar.gz
Size 255.7 kB
Tags Source
SHA-256 checksum
How to use checksums
0ab86cbcdc7536a5ad8c54912f424b05afb28a507a978bc3ca88430e2d7bb66c
BLAKE2b-256 checksum
How to use checksums
87675af77004912e76582e51b80dd1882bd1f775370233391e4f5f5df53676d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release files / poottu-1.0.1-py3-none-any.whl

Download URL poottu-1.0.1-py3-none-any.whl
Size 253.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef0a96e014febad24cc30d703d4065fdfc6aac45d9e0d1eefd968bea055bc8c6
BLAKE2b-256 checksum
How to use checksums
4aadfb8d9d1bcad3fb6d1905a73000600819b718ec4aadede0f384e119e791c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Security for poottu 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page