golter — Terminal

Golter

// Terminal-based file converter

Modern TUI interface built with Go. Batch convert your images, videos, audio, and documents. Vim key bindings for fast navigation.

GitHub
$ go install github.com/sametcn99/golter@latest
Cross-Platform
Open Source
user@terminal: ~ — golter
Golter - File Converter
Select files to convert
📂/home/user
1712 folders, 4 files
..
📂Documents
📂Downloads
📂Music
📂Pictures
📂Videos
📂Projects
📂Work
📂Archive
📂Backup
📂Personal
📂Misc
..
↑↓/jkNavigate
|
SpaceSelect
|
aSelect all
|
dDeselect
|
EnterOpen folder
|
cConfirm
|
/Filter
|
qQuit
func Features() {

// Powerful Features

Everything you need to streamline your file conversion experience in one tool.

Modern TUI Interface

Beautiful terminal interface with animations and visual feedback.

Batch Conversion

Convert multiple files simultaneously with concurrent processing.

High Performance

Native image processing and optimized encoding powered by Go.

Compression Options

Choose between High, Balanced, or Compact quality levels.

Vim Key Bindings

Fast navigation with j/k, h/l and full keyboard support.

Smart File Selection

Select only files of the same type for consistent conversions.

}
typeSupportedFormatsstruct{

// Supported Formats

Clear input/output mappings, feature highlights, and dependencies at a glance.

Images

High-quality image conversion with smart compression.

Inputs → Outputs

.jpg.jpeg.png.webp.jpg.png.webp

Features

  • Quality-based compression (92% High, 75% Balanced, 55% Compact)
  • WebP lossless mode for highest quality
  • Optimized PNG compression levels

Videos

Optimized video workflows for streaming and sharing.

Inputs → Outputs

.mp4.avi.mkv.webm.gif.mov.mp4.avi.mkv.webm.gif.mov

Features

  • H.264/H.265 encoding for MP4/MKV
  • VP9 encoding for WebM
  • Optimized GIF creation with palette generation
  • Multi-threaded encoding
  • Fast-start enabled for MP4 streaming

Audio

Studio-grade audio conversion with bitrate presets.

Inputs → Outputs

.mp3.wav.ogg.flac.m4a.aac.mp3.wav.ogg.flac.m4a.aac

Features

  • Bitrate control (320k High, 192k Balanced, 128k Compact)
  • FLAC lossless support
  • Opus/Vorbis encoding for OGG

Documents

Rich document pipelines for books, office, and data formats.

InputOutput
.pdf.md.html
.pdf.md.html.docx.epub.mobi.azw.azw3.fb2
.docx
.md.html.txt
.epub.mobi.azw.azw3.fb2
.epub.mobi.azw.azw3.fb2.pdf.html.txt.md
.csv
.xlsx.json
.xlsx.xls
.csv.json
.json
.yaml.yml.xml.csv.xlsx.xls
.yaml.yml
.json.toml
.toml
.yaml.yml
.xml
.json

Features

  • PDF text extraction to Markdown
  • Markdown to styled HTML with responsive design
  • Markdown/HTML to EPUB conversion
  • EPUB/MOBI/AZW/AZW3/FB2 conversions via Calibre (if installed)
  • DOCX conversions via Pandoc (if installed)
  • PDF compression/optimization
  • CSV to Excel conversion with styled headers and auto-fit columns
  • Excel to CSV export (exports first sheet)
  • JSON ↔ YAML conversion (preserves nested data)
  • JSON ↔ XML conversion with automatic root wrapping
  • JSON ↔ CSV / Excel (first sheet) conversions
  • YAML ↔ TOML conversion

Note: Video and audio conversion requires ffmpeg. Ebook conversions beyond EPUB require Calibre's ebook-convert. DOCX conversions require Pandoc.

}
var keybindings = map[string]string{

// Keyboard Shortcuts

Fast and efficient navigation with Vim-like key bindings.

"Navigate up"
:|k,
"Navigate down"
:|j,
"Go to parent directory"
:|h,
"Enter directory"
:|l,
"Select/Deselect"
:Space,
"Select all of same type"
:a,
"Clear all selections"
:d,
"Confirm selection"
:c,
"Filter files"
:/,
"Go to top"
:g,
"Go to bottom"
:G,
"Back / Cancel"
:Esc,
"Quit"
:q,
}
func Install() error {

// Quick Install

Go 1.21+ and ffmpeg are required. ffmpeg must be installed for video and audio conversion.

One-Click Install

$ go install github.com/sametcn99/golter@latest

Build with Taskfile (Recommended)

# Clone repository
$ git clone https://github.com/sametcn99/golter.git
$ cd golter
# Install task
$ go install github.com/go-task/task/v3/cmd/task@latest
# Install golter
$ task install
# Run
$ golter

Platform Specific Install

return nil
}
G

Golter

Terminal-based file converter

GitHubGPL-3.0 License
Process exited with code 0