Skip to main content

A memo/note-taking application with local storage and optional blockchain features

Project description

Memo

A lightweight, secure, and cross-platform memo/note-taking application built with Python and Tkinter. It features a system tray integration, local SQLite storage, AES/RSA encryption for sensitive data, and an optional blockchain data-persistence layer.

Features

  • System Tray Integration: Runs quietly in the background with a system tray icon.
  • Local Storage: Automatically saves your memos to a local SQLite database (memo.db).
  • Data Encryption: Support for AES (Fernet) and RSA encryption. You can selectively encrypt specific parts of your memos.
  • Optional Blockchain Upload: Persist your memos on-chain (using Web3) for tamper-proof storage.
  • Cross-Platform: Works on both Windows and Linux.

Installation

1. Basic Installation

Install it directly from PyPI:

pip install tiny-memo

Configuration

The application requires a .env file in the directory where you run it. You can copy the provided .env sample to .env:

cp ".env sample" .env

Configuration options:

  • FOLD_TIME: Time interval (in minutes) for folding/refreshing historical memos.
  • KEY_FILE: Path to your encryption key file.
  • ENC_METHOD: Encryption method to use (e.g., AES or RSA).
  • STRING_LENGTH: Maximum string length allowed before skipping blockchain upload.
  • TO_BLOCKCHAIN: Set to True to enable blockchain upload, or False to disable.

Usage

Start the application by running the following command in your terminal:

memo

(Note: Ensure your Python Scripts or bin directory is in your system's PATH).

Keyboard Shortcuts

When the application window is focused, you can use the following hotkeys:

  • Ctrl + S : 保存 (Save the current memo)
  • Ctrl + F : 搜索 (Search through historical memos)
  • Ctrl + L : 列出所有 (List all historical memos)
  • Ctrl + R : 加密 (Insert <ENC><DEC> tags to encrypt specific text)
  • Ctrl + B : 退出 (Exit the application completely)
  • Alt + M : 最小化 (Minimize to system tray)

Encryption Workflow

When editing a memo, you can press Ctrl + R to insert <ENC><DEC>. Any text placed between these tags (e.g., <ENC>My Secret<DEC>) will be encrypted automatically upon saving using your configured ENC_METHOD. When you view historical memos, you can click on the encrypted text to enter your password and decrypt it.

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tiny_memo-1.1.5.tar.gz (84.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tiny_memo-1.1.5-py3-none-any.whl (82.3 kB view details)

Uploaded Python 3

File details

Details for the file tiny_memo-1.1.5.tar.gz.

File metadata

  • Download URL: tiny_memo-1.1.5.tar.gz
  • Upload date:
  • Size: 84.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tiny_memo-1.1.5.tar.gz
Algorithm Hash digest
SHA256 3f16574bc842cb24f2776b0a6f869e9a843fb1c8a7927b74d32174fd8c9a8a5d
MD5 9b04a846d6a4d65a4554d66b20faec2e
BLAKE2b-256 7a037235c5d260e387810f8d8467273b4b0ff90350776098452cebacc440837a

See more details on using hashes here.

Provenance

The following attestation bundles were made for tiny_memo-1.1.5.tar.gz:

Publisher: python-publish.yml on kyle-meng/Memo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tiny_memo-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: tiny_memo-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 82.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for tiny_memo-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 7ff3ca0f28844c7a9146a4f4816ac104ab7402a821e3f934ccca85641911ee57
MD5 199dd95ec8e385241f2742d15737db3d
BLAKE2b-256 6c8ed058c8f932cfb8ea8ae0c549a2c333b417c3bcedcefe4d59b5abc3a707ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for tiny_memo-1.1.5-py3-none-any.whl:

Publisher: python-publish.yml on kyle-meng/Memo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page