Skip to content

kajuburfi/jrnl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jrnl

A simple tool to list the day's activities, completely in CLI.

Why?

Many similar tools exist, but this was sort of a learning project(for rust), and none of them met all the requirements I was looking for in a jrnl-ing system.

Visit the Webpage

Visit the relevant webpage here to view the

Demo

Visit the website here in case it doesn't work here.

video.mp4

Features(in brief)

Visit the webpage to see the detailed features.

  • All data is stored in markdown format(so nothing is encrypted).
  • You can have multiple different jrnl_folders, for different purposes, and can use any one from any where using the --path(-p) flag.
  • Tag system
    - [tag1] [tag2] Some data.
    
  • Already filled in data(date, weekday, time, etc) in your file.
  • A specific ordering system, with 1 file per month.
  • Prints calendars with highlighted dates.
  • Search system.
  • Specific food tag.
  • Slightly configurable(I hardcoded most of the things).

Installation

Since this is just a side-project, there is not many ways to install this.

You can, of course, clone the repository and use cargo to install it, or use:

cargo install --git https://github.com/kajuburfi/jrnl --locked

Note: This is meant for my personal use, and so many things are hardcoded. Use at your own risk.

Configuration

Just copy-paste the config file into ~/.config/jrnl/config.toml, and make the necessary changes. All data about the config file is mentioned in the comments.

Since most of the things are made specifically for my needs(hardcoded), many options are not configurable.

If you want to try it out, and get stuck, feel free to open an issue, and I'll see what I can do.

tldr; Not specifically meant for other people's use(might not fit your needs, and is mostly not very much configurable)

Dependencies

  • chrono: For date and time purposes.
  • clap: For CLI arguments.
  • colored: For colored messages.
  • inquire: To interactively get the date(of entry to be fetched) from the user.
  • pager: To page long outputs.
  • comfy-table: To print tables.
  • toml: To parse the configuration file.
  • serde: For use in toml and clap.
  • term_size: To get the terminal width, to be able to wrap tables and calendars accordingly.
  • stringmetrics: For approximate word searching.
  • shellexpand: To expand the ~(tilde) in paths.
  • parse_datetime: To convert human-readable time to exact dates.

License

This tool is licensed under the MIT license.

About

A simple tool to maintain a journal, completely in CLI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published