Skip to main content

Simple CLI application to remember simple things.

Project description

QuickRemember

One problem I frequently run into while using my computer is simply needing to write something down to remember at a later date. I always open up a txt file, add in the info, save it as something random, and most of the time it gets lost on my hard drive. So, in the interest of making it easier to remember things and prevent random txt files from showing up in arbitrary places that you don't know if you should delete, I wrote this very simple program to quickly save and recall short bits of information.

QuickRemember is a simple command line interface application for quickly remembering the simple things. Its usage is meant to sound like natural language, and is very simple to use. QuickRemember is made up of 3 parts: storing, recalling, and forgetting. Storing and recalling exist within the same remember command, and forgetting is in the forget command.

Install

pip install quickremember

This is the first time I have ever distributed a package. On some Linux distros, it's discouraged to globally install a package with pip rather than the distro's package manager, so I'm considering learning how to and publishing a flatpak to keep it accessible to any distro.

Usage

Storing

Storing information is very easy. Simply use remember <what to remember>. You can pass informmation to it inside or outside of quotations. QuickRemember concatenates arguments together to form the query. Just remember you need to escape special characters in some way, the easiest being to use quotes.

For example:

remember My API key is 12345

and

remember "My API key is 12345"

produce the exact same result. But,

remember I am cool & I like dolphins

and

remember "I am cool & I like dolphins"

most definitely do not, as in bash, the first example will fork the command and then we have a problem because I is probably not a command.

Recalling

QuickRemember uses fuzzy searching (via thefuzz python package) to search for similar notes to a search query. Recalling, like storing, uses the remember keyword and is meant to be easy to use with natural language. To recall, simply add a ? to the end of a search query. Once again, you can or don't have to use quotation marks.

remember my api key?

This will return the 5 closest-related "memories" in order of closeness.

You can also recall everything by simply executing remember --everything.

Forgetting

If you are done with a piece of information and don't want to clutter your memroies, forgetting is easy as well, just run forget with a search query. The program will prompt for confirmation, and will then remove the memory.

forget my api key

You can also erase everything, but be careful because it is very permanent.

forget --everything

Additional notes

QuickRemember stores everything in a plaintext file in your home (~/.local/share/remember/data.txt). It's not a safe place to store sensitive information as anyone with access to the system can see it. To combat this, I'm considering implementing a separate data file with encrypted information. This brings added complexity with security considerations such as secret key and data input being visible in the history, and the data output also possibly being visible in the history.

Some ways to combat this would be getting input where it does not display what you are typing, like how sudo gets password input. To keep data output secure, I could possibly directly copy it to clipboard or some sort of other way to securely give the information to the user, but I"m just not sure what the best way of doing this is.

Potential future work

  • Separate encrypted data storage
  • Secure input for data and key entry
  • Some search improvements

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

quickremember-0.1.0rc1.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

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

quickremember-0.1.0rc1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file quickremember-0.1.0rc1.tar.gz.

File metadata

  • Download URL: quickremember-0.1.0rc1.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for quickremember-0.1.0rc1.tar.gz
Algorithm Hash digest
SHA256 d3eb07b3644c50eba10d8a1cf151d06c066bd7fc000720bea7288dd7277a2788
MD5 864b883ac9f7d8ca24fd1aef8c2185cf
BLAKE2b-256 532d7a0230c7814a7982878011cd2c0d6ffc95e513c68f93867a000017ee5b5a

See more details on using hashes here.

File details

Details for the file quickremember-0.1.0rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for quickremember-0.1.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 ea7253403ae5052d3602526ea5cfc05fa8774d50a82d4dc6f8ed7b563a874c1b
MD5 a45a806e7fb6a098fc5439f4e5b36525
BLAKE2b-256 eaaf328c016b829f2c5a5616037d453fd263fa0ea25827dd459df614258d85b4

See more details on using hashes here.

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