Skip to main content

Minimal opinionated Python CLI to jot timestamped thoughts.

Project description

jot Terribly drawn image of the word "jot" in cursive with a pencil at the end of the letter "t". The dot of the letter "i" is a red love heart.

Project Status: Active – The project has reached a stable, usable state and is being actively developed. Quality Tests Blog posts

Minimal opinionated Python command-line interface (CLI) to jot timestamped thoughts.

Install

Recommended:

  1. Install uv.
  2. Run uv tool install jot-cli in a terminal.
  3. Update with uv tool upgrade jot-cli when there's a new release.

To install the current development version: uv tool install git+https://github.com/matt-dray/jot.

Alternatively you can use pipx: pipx install jot-cli.

Requires Python >=3.10.

CLI

Write

Open a terminal and write a jotting:

jot "ate an apple"

The first time you run jot, you'll be prompted for a path to a text file where your jottings will be written. The file path will be stored under the JOT_PATH key in a config.json file, which is saved to the OS-dependent location resolved by platformdirs.user_config_path("jot").

Each jotting is timestamped and prepended to your text file:

[2025-08-28 11:15] ate an apple
[2025-08-27 10:58] ate a kiwi
[2025-08-26 11:09] ate a pineapple
[2025-08-25 10:40] ate an apple and a pear

Options

You can review your jottings using the provided options. For example:

  • jot -l 3 to list the last three
  • jot -s apple -l 1 to search for 'apple' and limit to the most recent one
  • jot -s "[^pine]apple" to search for 'apple' with a regular expression that excludes 'pineapple'
  • jot -f 20250825 -t 20250828 to return jottings from 25 Aug 2025 (inclusive) and to 28 Aug 2025 (exclusive)

And for information:

  • jot -w to show where the config and jot files are
  • jot -v to get the version number
  • jot -h to show the help file, which includes possible option combinations

Notes

  • I developed this tool to help me remember the tasks I've done during my day job and later reflect.
  • Your kilometerage may vary; leave an issue if you find bugs or have suggestions.

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

jot_cli-0.3.0.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

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

jot_cli-0.3.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file jot_cli-0.3.0.tar.gz.

File metadata

  • Download URL: jot_cli-0.3.0.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for jot_cli-0.3.0.tar.gz
Algorithm Hash digest
SHA256 29d1888a9e5cb69eb43d95121504c80dcf3bf18863b5e935842a7e1811547938
MD5 c2cf265a5fc99c9fc32d993d7cb2efa8
BLAKE2b-256 e8bfdb10c1091e00cfbcbc57ed740da459c3862d8406defcc29cf4907a3d674e

See more details on using hashes here.

File details

Details for the file jot_cli-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: jot_cli-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for jot_cli-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6cf805eb972b4e651f9241d101d4bb8102bcbb29200df42ad518e4c4434afb41
MD5 c779b9b685608de143e5dc3f0a4da3f2
BLAKE2b-256 3d82114a806c4b66353c864a400e710b73da9d1a72023d839e71dbbc7c92ad83

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