Limit search to available items
2600 results found. Sorted by relevance | date | title .
Book Cover
E-book
Author Montagnino, Marian, author

Title BUILDING MODERN CLI APPLICATIONS IN GO develop next-level CLIs to improve user experience, increase platform usage, and maximize production / Marian Montagnino
Edition 1st edition
Published [S.l.] : PACKT PUBLISHING LIMITED, 2023

Copies

Description 1 online resource
Contents Intro -- Preface -- Title Page -- Copyright -- Dedication -- Contributors -- Table of Contents -- Part 1: Getting Started with a Solid Foundation -- Chapter 1: Understanding CLI Standards -- A brief introduction and history of the command line -- About the history -- Introducing the CLI -- The philosophy of CLI development -- Checklist for a successful CLI -- The guidelines -- Name -- Help and documentation -- Input -- Output -- Configuration -- Security -- Open source community -- Software lifespan and robustness -- Go for CLIs -- Summary -- Questions -- Answers -- Further reading
Chapter 2: Structuring Go Code for CLI Applications -- Technical requirements -- Commonly used program layouts for robust applications -- Program layouts -- Common folders -- Determining use cases and requirements -- Use cases -- Requirements -- Disadvantages and benefits of use cases and requirements -- Use cases, diagrams, and requirements for a CLI -- Requirements for a metadata CLI -- Structuring an audio metadata CLI application -- Bounded context -- Language -- Entities and value objects -- Aggregation -- Service -- Events -- Repository -- Creating the structure -- Summary -- Questions
Answers -- Further reading -- Chapter 3: Building an Audio Metadata CLI -- Technical requirements -- Defining the components -- cmd/ -- cmd/api/ -- cmd/cli/ -- cmd/cli/command -- extractors/ -- extractors/tags -- extractors/transcript -- internal/interfaces -- models/ -- services/metadata -- storage/ -- vendor/ -- Implementing use cases -- Uploading audio -- Requesting metadata -- Testing a CLI -- Manual testing -- Testing and mocking -- Summary -- Questions -- Answers -- Chapter 4: Popular Frameworks for Building CLIs -- Technical requirements
Cobra -- a library for building modern CLI applications -- Creating subcommands -- Global, local, and required flags -- Intelligent suggestions -- Automatically generated help and man pages -- Powering your CLI -- Viper -- easy configuration for CLIs -- Configuration types -- Watching for live config changes -- Basic calculator CLI using Cobra and Viper -- The Cobra CLI commands -- The Viper configuration -- Running the basic calculator -- Summary -- Questions -- Answers -- Further reading -- Part 2: The Ins and Outs of a CLI -- Chapter 5: Defining the Command-Line Process
Technical requirements -- Receiving the input and user interaction -- Defining subcommands, arguments, and flags -- Piping -- Signals and control characters -- User interaction -- Processing data -- Returning the resulting output and defining best practices -- Summary -- Questions -- Answers -- Further reading -- Chapter 6: Calling External Processes and Handling Errors and Timeouts -- Technical requirements -- Calling external processes -- The os/exec package -- Creating commands using the Cmd struct -- Running the command -- Interacting with REST APIs -- Get request -- Pagination
Summary Evolve the humble CLI using Go and unleash the next generation of powerful, flexible, and empathy-driven interfaces Purchase of the print or Kindle book includes a free PDF eBook Key Features Discover how Go enables the development of elegant and intuitive CLIs Explore a range of CLI development aspects and pick up a vast array of best practices Create engaging and user-friendly interfaces and learn how to distribute them Book Description Although graphical user interfaces (GUIs) are intuitive and user-friendly, nothing beats a command-line interface (CLI) when it comes to productivity. Many organizations settle for a GUI without searching for alternatives that offer better accessibility and functionality. If this describes your organization, then pick up this book and get them to rethink that decision. Building Modern CLI Applications in Go will help you achieve an interface that rivals a GUI in elegance yet surpasses it in high-performance execution. Through its practical, step-by-step approach, you'll learn everything you need to harness the power and simplicity of the Go language to build CLI applications that revolutionize the way you work. After a primer on CLI standards and Go, you'll be launched into tool design and proper framework use for true development proficiency. The book then moves on to all things CLI, helping you master everything from arguments and flags to errors and API calls. Later, you'll dive into the nuances of empathic development so that you can ensure the best UX possible, before you finish up with build tags, cross-compilation, and container-based distribution. By the end of this UX book, you'll be fully equipped to take the performance and flexibility of your organization's applications to the next level. What you will learn Master the Go code structure, testing, and other essentials Add a colorful dashboard to your CLI using engaging ASCII banners Use Cobra, Viper, and other frameworks to give your CLI an edge Handle inputs, API commands, errors, and timeouts like a pro Target builds for specific platforms the right way using build tags Build with empathy, using easy bug submission and traceback Containerize, distribute, and publish your CLIs quickly and easily Who this book is for This book is for beginner- and intermediate-level Golang developers who take an interest in developing CLIs and enjoy learning by doing. You'll need an understanding of basic Golang programming concepts, but will require no prior knowledge of CLI design and development. This book helps you join a community of CLI developers and distribute within the popular Homebrew package management tool
Subject Application software -- Development.
Go (Computer program language)
Application software -- Development.
Go (Computer program language)
Form Electronic book
ISBN 180461369X
9781804613696