Home

Awesome

<p align="center"> <img src="/img/logo.jpg"> </p> <p align="center"> <a href="https://pkg.go.dev/github.com/Lifailon/lazyjournal"><img src="https://pkg.go.dev/badge/github.com/Lifailon/lazyjournal.svg" alt="Go Reference"></a> <a href="https://goreportcard.com/report/github.com/Lifailon/lazyjournal"><img src="https://goreportcard.com/badge/github.com/Lifailon/lazyjournal" alt="Go Report"></a> <a href="https://github.com/Lifailon/lazyjournal"><img title="Go Version"src="https://img.shields.io/github/go-mod/go-version/Lifailon/lazyjournal?logo=go"></a> <a href="https://github.com/Lifailon/Kinozal-Bot/blob/rsa/LICENSE"><img title="License"src="https://img.shields.io/github/license/Lifailon/Kinozal-Bot?logo=readme&color=white"></a> </p>

Terminal user interface for journalctl, file system logs, as well Docker and Podman containers for quick viewing and filtering with fuzzy find, regex support (like fzf and grep) and coloring the output (like tailspin), written in Go with the awesome-gocui (fork gocui) library.

This tool is inspired by and with love for lazydocker and lazygit.

interface

interface

Functional

Supports 3 filtering modes:

Roadmap

This is an up-to-date roadmap in addition to the functionality described above.

Install

Releases

Binaries for the Linux operating system are available on the releases page.

Development is carried out on the Ubuntu Server system, and is also tested on the Raspberry Pi (aarch64 platform), the WSL environment on the Oracle Linux system and the Darwin system (x64 platform).

Run the command in the console to quickly install or update the stable version on Linux or MacOS:

curl https://raw.githubusercontent.com/Lifailon/lazyjournal/main/install.sh | bash

This command will run a script that will download the latest executable from the GitHub repository into your current user's home directory along with other executables (or create a directory) and grant execution permission.

Latest

You can also use Go for install the dev version. To do this, the Go interpreter must be installed on the system, for example, in Ubuntu you can use the SnapCraft package manager:

sudo snap install go --classic
grep -F 'export PATH=$PATH:$HOME/go/bin' $HOME/.bashrc || echo 'export PATH=$PATH:$HOME/go/bin' >> $HOME/.bashrc && source $HOME/.bashrc

go install github.com/Lifailon/lazyjournal@latest

Arch Linux

If you're an Arch Linux user you can also install from the AUR with your favorite AUR helper, e.g.:

paru -S lazyjournal

Thank you Matteo Giordano for upload and update the package in AUR.

Others

If you use other packag manager and want this package to be present there as well, open an issue or load it yourself and make Pull requests.

Usage

You can launch the interface anywhere (no parameters are used):

lazyjournal

Access to all system logs and containers may require elevated privileges for the current user.

Windows is not currently supported, but the project will work to access Docker and Podman containers logs.

Build

Clone the repository, install dependencies from go.mod and run the project:

git clone https://github.com/Lifailon/lazyjournal
cd lazyjournal
go mod tidy
go run main.go

Build executable files for different platforms and all systems:

bash build.sh

Hotkeys

Contributing

Any contribution is welcome. If you want to implement a feature or fix something, please open an issue first.

Alternatives

If you like using TUI tools, try multranslate for translating text in multiple translators simultaneously, with support for translation history and automatic language detection.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Copyright (C) 2024 Lifailon (Alex Kup)

<!-- ```j /$$ | $$ | $$ /$$$$$$ /$$$$$$$$ /$$ /$$ | $$ |____ $$|____ /$$/| $$ | $$ | $$ /$$$$$$$ /$$$$/ | $$ | $$ | $$ /$$__ $$ /$$__/ | $$ | $$ | $$$$$$$$| $$$$$$$ /$$$$$$$$| $$$$$$$ |________/ \_______/|________/ \____ $$ /$$ | $$ | $$$$$$/ \______/ /$$$$$ /$$ |__ $$ | $$ | $$ /$$$$$$ /$$ /$$ /$$$$$$ /$$$$$$$ /$$$$$$ | $$ | $$ /$$__ $$| $$ | $$ /$$__ $$| $$__ $$ |____ $$| $$ /$$ | $$| $$ \ $$| $$ | $$| $$ \__/| $$ \ $$ /$$$$$$$| $$ | $$ | $$| $$ | $$| $$ | $$| $$ | $$ | $$ /$$__ $$| $$ | $$$$$$/| $$$$$$/| $$$$$$/| $$ | $$ | $$| $$$$$$$| $$ \______/ \______/ \______/ |__/ |__/ |__/ \_______/|__/ ``` -->