src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
CHANGELOG.md | ||
CODE_OF_CONDUCT.md | ||
LICENSE.md | ||
README.md |
jot: Journal Operations Tool
Manage and document system changes with ease.
jot
is a command-line tool designed to help you create, read, update, and validate journal entries. Ideal for keeping detailed logs of system changes, this tool is easy to use.
Installing / Getting Started
Releases
For every new update, I make a new release and compile the binaries myself.
Build from Source
To build jot
from source, you'll need to have Rust and Cargo installed. You can install Rust from rust-lang.org.
$ git clone https://github.com/walker84837/jot-rs.git
$ cd jot
$ cargo build --release
This will build the jot
executable, which you can then use directly.
Initial Configuration
Optionally, you can specify the directory where journal entries will be stored by setting the JOURNAL_DIR
environment variable:
$ export JOURNAL_DIR="/path/to/your/journal/entries"
or you can specify it using the -d
or --dir
, like so:
$ jot --dir ~/Documents/admin-entries create --name system-update
Features
jot
offers several powerful features:
- Create Entries: Generate a new journal entry with a title and optional content.
- Read Entries: View specific fields or the entire content of a journal file.
- Update Entries: Edit existing journal entries using your preferred text editor.
- Validate Entries: Check if an entry adheres to the required format.
- Customizable Entry Directory: Configure the storage location for entries via command-line arguments or environment variables.
Usage
jot
uses subcommands to perform various operations. Here's how you can use each of them:
Creating an Entry
$ jot create --name "system-update"
Creates a new journal entry titled "system-update".
Reading an Entry
$ jot read --field all 001-system-update.md
Displays the entire content of the entry file 001-system-update.md
. You can also specify a field (title
, body
, date
, code
) to view a specific part of the entry.
Updating an Entry
$ jot update 001-system-update.md
Opens the specified entry file in the text editor defined by the EDITOR
environment variable (defaults to vi
if not set).
Validating an Entry
$ jot validate file 001-system-update.md
Checks if the specified entry file has a valid format, including a title and correctly formatted date.
Developing
To contribute to the development of jot
, follow these steps:
$ git clone https://github.com/walker84837/jot-rs.git
$ cd jot
$ cargo build
You can then modify the code and build it again to test your changes.
Contributing
We welcome contributions to improve jot
!
- Fork the repository.
- Create a new branch:
git checkout -b feature-branch-name
. - Make your changes and commit them:
git commit -m 'Add some feature'
. - Push to the branch:
git push origin feature-branch-name
. - Open a pull request.
Please ensure your code is linted and tests pass before submitting your pull request.
Links
- Repository
- Issue tracker
- For sensitive bugs, please contact me directly.
Licensing
The code in this project is licensed under the BSD 3-Clause License. The logo is licensed under the CC BY-NC-SA 4.0.