Best of CLIFebruary 2025

  1. 1
    Article
    Avatar of communityCommunity Picks·1y

    My favourite command-line tools

    This post details the author's favorite command-line tools that are installed on every machine they use. The tools include tmux, zsh, bat, eza, fzf, git-branch-i, jq, and neovim. The author explains their use cases and highlights the key features that make these tools indispensable. The post also notes the various methods used to install these tools across macOS, Arch Linux, and Windows.

  2. 2
    Article
    Avatar of awegoAwesome Go·1y

    Building RAG systems in Go with Ent, Atlas, and pgvector

    Explore how to build a Retrieval Augmented Generation (RAG) system using Go with Ent, Atlas, and pgvector. The tutorial covers setting up a Golang module, defining database schema with Ent, configuring PostgreSQL with Docker, and managing the schema with Atlas. It also includes steps to scaffold a CLI application, load documents into the database, create embeddings using the OpenAI API, and implement a question-asking feature that returns context-aware responses.

  3. 3
    Article
    Avatar of lobstersLobsters·1y

    ouch-org/ouch: Painless compression and decompression in the terminal

    Ouch, which stands for Obvious Unified Compression Helper, is a CLI tool designed for easy and fast compression and decompression of various file formats. It does not require runtime dependencies for Linux x86_64, offers great error messages, and includes accessibility features. Ouch supports formats like .zip, .tar, .gz, .bz2, and many others. Main commands are decompress, compress, and list, with corresponding aliases. Additional features include shell completions, man pages, and the ability to handle chained formats. Installation options include package managers like pacman, scoop, and cargo.

  4. 4
    Article
    Avatar of hnHacker News·1y

    trycua/lume: A lightweight CLI and local API server to create, run and manage macOS and Linux virtual machines (VMs) natively on Apple Silicon.

    Lume is a lightweight CLI and local API server for creating, running, and managing macOS and Linux VMs with near-native performance on Apple Silicon using Apple's Virtualization Framework. Commands include creating, running, listing, and deleting VMs, among others. Pre-built images with SSH server and auto-login are available, and lumen exposes a local HTTP API server for automated VM management. Contributions are welcome and can be done through the project's GitHub page.

  5. 5
    Article
    Avatar of antonzAnton Zhiyanov·1y

    Howto: Humble command-line assistant

    Howto is a simple AI command-line assistant designed to help users with various command-line tasks by suggesting appropriate commands. Users can refine their inquiries using follow-up questions and execute the suggested commands directly through Howto. It can be configured with various AI providers, including OpenAI-compatible services and local models, and offers useful features to streamline command-line interactions. Installation instructions are provided for both Homebrew and Go.

  6. 6
    Article
    Avatar of jsdeveloperJavaScript Developer·1y

    Automate Your JavaScript to TypeScript Migration with Typify

    Typify is a powerful CLI tool designed to automate the migration of JavaScript projects to TypeScript. It features smart type inference, automatic code transformations, and compatibility with existing TypeScript configurations. Typify uses Babel's AST parser to analyze code, map JavaScript idioms to TypeScript equivalents, and generate accurate type annotations while preserving original code structure.

  7. 7
    Article
    Avatar of communityCommunity Picks·1y

    casey/just: 🤖 Just a command runner

    'Just' is a versatile command runner that simplifies running project-specific commands. It supports various operating systems and allows for detailed error reporting, environment variable loading, and command line argument handling. 'Just' files, called 'justfiles', use a syntax inspired by 'make'. It provides comprehensive features and integration options with popular shells and package managers, making it an easy-to-use and flexible tool for developers.

  8. 8
    Video
    Avatar of aarondfrancisAaron Francis·1y

    I built a CLI automation tool in PHP (yes really)

    A developer describes their process of creating a command line interface (CLI) automation tool using PHP. The tool sends key presses to the CLI and makes assertions to test the user interface. This integration testing approach ensures a smooth user experience by verifying that UI elements behave as expected. Detailed explanations and code snippets illustrate the setup and execution of the testing framework. The entire project is open source and available for public use.