devtui

command module
v0.28.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 22, 2025 License: MIT Imports: 1 Imported by: 0

README ยถ

DevTUI - A Swiss-army app for developers

DevTUI is an all-in-one terminal toolkit designed for developers. It consolidates your everyday utilities into a single, unified TUI (Text User Interface) and CLI (Command Line Interface). No more juggling multiple tools โ€” everything you need is now just one command away.

๐Ÿš€ Actively developed and continuously improving.

devtui

๐Ÿ’ก Why DevTUI?

  • ๐Ÿงฐ Unified experience โ€“ Replace scattered tools with a single app
  • ๐Ÿ”’ Privacy-focused โ€“ Everything runs locally, no data ever leaves your computer
  • ๐ŸŒ Offline support โ€“ No internet? No problem
  • โŒจ๏ธ Built for the terminal โ€“ No need to reach for your mouse or browser

๐Ÿ“ฆ Install

๐Ÿงƒ Homebrew
brew install skatkov/tap/devtui
๐Ÿ“ฅ Download Executable

Or download executable from GitHub Releases


๐Ÿ“‹ Requirements

macOS
  • โœ… Works out of the box
Linux
  • ๐Ÿ–ฑ Wayland requires: wl-clipboard
  • ๐Ÿงฎ X11 requires: xclip or xsel

To check your session type:

echo $XDG_SESSION_TYPE
# Output: wayland or x11
Windows
  • โš ๏ธ Not tested, but available.

๐Ÿš€ Docs

DevTUI includes both a TUI and CLI interface.

๐Ÿ–ฅ TUI

Run devtui you'll see a list of available tools โ€” just pick one and go!

Autocompletion

Run a one of these commands depending on shell

devtui completion bash > ~/.bashrc
devtui completion zsh  > ~/.zshrc
devtui completion fish > ~/.fishrc
CLI (Experimental)

The CLI interface is still in development and may change in future versions.

To include all markdown files from the ./docs folder, use the following syntax:

find ./docs -name "*.md" -exec cat {} \;
๐ŸŽจ CSS Formatter
devtui cssfmt < testdata/bootstrap.min.css > output.css

Optional flags:

  -i, --indent int   spaces for indentation (default 2)
      --semicolon    always end rule with semicolon, even if not needed (default true)
  -t, --tab          use tabs for indentation
๐Ÿงผ CSS Minimizer

Strip unnecessary whitespace from CSS files:

devtui cssmin < input.css > output.min.css
๐Ÿ—‚ XML Formatter
devtui xmlfmt < testdata/input.xml > output.xml

Optional flags:

  -i, --indent string   Indent string for nested elements (default "  ")
  -n, --nested          Nested tags in comments
  -p, --prefix string   Each element begins on a new line and this prefix
๐Ÿ“ GraphQL Query Formatter

Format GraphQL queries:

devtui gqlfmt < testdata/query.graphql

devtui gqlfmt < testdata/query.graphql > formatted.graphql
devtui gqlfmt --indent "    " --with-comments --with-descriptions < testdata/query.graphql

Optional flags:

  -i, --indent string       Indent string for nested elements (default is 2 spaces) (default "  ")
  -c, --with-comments       Include comments in the formatted output
  -d, --with-descriptions   Include descriptions in the formatted output (omitted by default)
๐Ÿ—’๏ธ TSV to Markdown Table Converter

Convert TSV to Markdown Table:

devtui tsv2md -t < example.tsv          - convert tsv from stdin and view result in stdout

devtui tsv2md < example.tsv > output.md - convert tsv from stdin and write result in new file

cat example.tsv | devtui tsv2md         - convert tsv from stdin and view result in stdout

Optional flags:

  -a, --align           Align columns width
  -t --header string    Add main header (h1) to result
๐Ÿ—’๏ธ CSV to Markdown Table Converter

Convert CSV to Markdown Table:

devtui csv2md -t < example.csv          - convert csv from stdin and view result in stdout

devtui csv2md < example.csv > output.md - convert csv from stdin and write result in new file

cat example.csv | devtui csv2md         - convert csv from stdin and view result in stdout

Optional flags:

  -a, --align           Align columns width
  -t --header string    Add main header (h1) to result
๐Ÿ—’๏ธ TSV to CSV Converter

Convert TSV to CSV:

devtui tsv2csv < testdata/input.tsv > output.csv

Optional flags:

  -i, --indent string   Indent string for nested elements (default "  ")
  -n, --nested          Nested tags in comments
  -p, --prefix string   Each element begins on a new line and this prefix

๐Ÿ“š Documentation Generator

DevTUI includes automated documentation generators for both CLI and TUI interfaces.

Generate All Documentation

To regenerate both CLI and TUI documentation:

cd docs && go run *.go

This will:

  • Generate CLI documentation in site/cli/ with proper Jekyll front matter
  • Generate TUI documentation in site/tui/ with key bindings and usage instructions
  • Clean up auto-generated content (remove footers, SEE ALSO sections, etc.)
  • Apply proper formatting and language hints for code examples
Individual Generators

You can also run generators separately:

# CLI documentation only
cd docs && go run cli-docs.go docs.go

# TUI documentation only
cd docs && go run tui-docs.go docs.go

https://www.figma.com/design/JTS0mzphMDiRuuC3xNprLu/Untitled?node-id=0-1&p=f&t=0LeB0uhXSUmZpE3Q-0

๐Ÿง‘โ€๐Ÿ’ป Contact

I love when people reach out, so please don't hesitate to do that.

Documentation ยถ

The Go Gopher

There is no documentation for this package.

Directories ยถ

Path Synopsis
internal
base64
devtui/internal/base64/base64.go
devtui/internal/base64/base64.go
ui
devtui/internal/ui/base_pager_model.go
devtui/internal/ui/base_pager_model.go
tui
base64-decoder
devtui/tui/base64-decoder/main.go
devtui/tui/base64-decoder/main.go
base64-encoder
devtui/tui/base64-encoder/main.go
devtui/tui/base64-encoder/main.go
css
csv2md
devtui/tui/csv2md/main.go
devtui/tui/csv2md/main.go
password command
url-extractor
devtui/tui/url-extractor/main.go
devtui/tui/url-extractor/main.go
xml

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL