1 unstable release

0.1.0 Jan 14, 2026

#470 in Development tools

MIT license

325KB
278 lines

Mem

A simple, terminal-based command saver and searcher.

Demo of Mem

What is this?

I built mem because I got tired of googling the same tar, ffmpeg, and docker commands over and over again.

It is a straightforward CLI tool written in Rust that lets you:

  1. Save a command you want to remember.
  2. Add a quick description for context.
  3. Fuzzy search for it later using a TUI (Terminal User Interface).

It acts as a personal "cheat sheet" that lives in your terminal. It works well for my workflow, and I'm sharing it in case it helps yours.


Installation

From crates.io

cargo install memplace

Note: The package name is memplace, but the binary command you run is mem.

From source

If you want to modify it or build it locally:

git clone https://github.com/PET1h/memplace
cd memplace
cargo install --path .

Usage

1. Save a command

When you find a useful command, save it. You pass the command as an argument, and the tool will prompt you for a description.

mem save "tar -xvf archive.tar.gz"

Example interaction:

Type description for the command (or just hit Enter)
Extract a tarball

When you forget how to do something, search for it. You can search by keywords in the command or the description.

mem search "extract"

This opens a TUI list.

Controls:

  • Up/Down (or j / k): Navigate the list
  • Enter: Select the command and print it to stdout (so you can copy it)
  • Esc or q: Exit

How it works

mem stores your commands in a simple JSON file located in your system's standard data directory:

  • Linux: ~/.local/share/memplace/memplace.json
  • macOS: ~/Library/Application Support/rs.memplace.memplace/memplace.json
  • Windows: %APPDATA%\memplace\memplace\data\memplace.json

Because it's just JSON, you can manually back it up or edit it if you make a typo.


Project status

This is currently v0.1.0.

I developed this for my own personal use, so it might be missing features (like editing or deleting commands via the UI) or have edge cases I haven't found yet.

If you find a bug or have an idea for a feature that would make it better, feel free to open an issue or submit a Pull Request.


License

MIT

Dependencies

~15–21MB
~398K SLoC