Skip to content

bagaag/memory-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Memory

Memory is a command line application that captures, stores and manages the data that describes human experience. Information is organized into people, places, things and events. A network of relationships between these entries relays human experience in a way that traditional journaling methods cannot.

Though intended to capture and preserve memories, other uses include fiction or non-fiction development, genealogical research, contact management and historical study.

Example output:

[matt@bodhi ~]$ memory
Welcome. You have 2 entries under management. Type 'help' for assistance.
memory> help
NAME:
   memory - A CLI tool to collect and browse the elements of human experience.

USAGE:
   memory [global options] command [command options] [arguments...]

VERSION:
   1.0

DESCRIPTION:
   memory is a tool to collect, browse and manage entries. Each entry
represents either an Event, Person, Place, Thing or Note. Each entry has a
unique name and entries can link to other entries using an entry name in
brackets, as in [Linked Entry]. When editing an entry, your favorite text
editor is loaded with a markdown file containing YAML frontmatter defining
the entry's attributes. Frontmatter is surrounded by three hyphens above
and below, and everything below the frontmatter is the entry's description,
which can be formatted with markdown and contain links. Files such as
images and documents can be attached to entries. Use the --help argument to
explore the commands available and use `memory command --help` to get
command-specific help. Commands can be used in interactive mode (at the
`memory>` prompt) or directly from your shell.

AUTHOR:
   Matt Wiseley <wiseley@gmail.com>

COMMANDS:
   add       adds a new entry
   delete    deletes an entry
   detail    displays details of an entry
   edit      edits an entry
   file      list file details and associated commands
   files     displays a list of attachments associated with an entry
   get       prints the editable form of an entry
   links     displays links to and from an entry
   ls        lists entries
   put       adds or updates an entry from a file
   rebuild   rebuilds the search index and internal database from entry files
   rename    renames an entry
   seeds     displays links to entries that don't exist yet
   tags      displays summary of entry tags
   timeline  displays a chronological list of dated entries
   help, h   Shows a list of commands or help for one command

GLOBAL OPTIONS:
   --home value   directory path where data and settings are read from and saved to
   --help, -h     show help
   --version, -v  print the version
memory> _

Binary releases are provided for Linux and MacOS Darwin. If you're interested in a Windows version, let me know. Currently, one of the libraries I'm using for terminal control doesn't compile for Windows.

By default, preferences, entries and attachments are stored in ~/.memory. You can override this with the --home argument.

Note that Memory relies on your favorite text editor to edit entries. The default is /usr/bin/vim. If you don't want to use vim, you can change this in the ~/.memory/settings.json file after running memory at least once.

Feedback is welcome. I'm currently working on a web interface.

About

A cli app written in Go that captures and organizes human experience

Resources

License

Stars

Watchers

Forks

Packages

No packages published