memplace

Crates.iomemplace
lib.rsmemplace
version0.1.0
created_at2026-01-14 19:53:47.341709+00
updated_at2026-01-14 19:53:47.341709+00
description command and snippet manager
homepage
repositoryhttps://github.com/PEt1h/memplace
max_upload_size
id2043603
size382,683
yoooooh (PEt1h)

documentation

README

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

2. Search

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

Commit count: 1

cargo fmt