Skip to main content

The Art of Command Line Interfaces

5h 51m 42s
English
Paid

Course description

No one has put more effort into studying, describing, and explaining the principles of creating high-quality command-line interface (CLI) applications in Go than the author of this course, Marian. Go is not just about HTTP servers, and Marian demonstrates this like no one else. She is the author of the bestseller *Building Modern CLI Applications with Go* (available on Amazon) and has spoken twice at Gophercon, where she shared her deep experience in developing elegant and idiomatic CLI applications in Go.

Read more about the course

Now, for the first time, Marian is ready to share all her accumulated experience in the format of a video course.

  • Over 5 hours of material.
  • No CLI experience required: the training starts with the basics and progresses to advanced topics. Only programming experience in Go is needed.
  • Step-by-step practical assignments at each stage.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 40 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome to the course!

All Course Lessons (40)

#Lesson TitleDurationAccess
1
Welcome to the course! Demo
00:43
2
Introduction
02:48
3
Creating a Simple CLI
04:58
4
Adding a Logger
07:26
5
Adding silent & verbose flags
11:39
6
Intro to flag.Parse()
01:03
7
Handling a list of URLs
06:42
8
Customizing help output
06:38
9
Exercise Walkthrough
09:29
10
Introduction
02:24
11
Setting up a new structured logger
15:33
12
Adding Check & Monitor Commands
17:11
13
Adding Command Hooks
02:48
14
Using the Context to Manage Global Cancellation
11:52
15
Creating a Version Command
08:19
16
Exercise Solution
17:53
17
Introduction to Testing CLI Applications
05:37
18
Writing Unit Tests
09:11
19
Mocking HTTP Calls
19:45
20
Using ExecuteC to test Cobra Commands
13:11
21
Exercise Solution
07:15
22
New output flag - JSON, Text, Table output (tablewriter)
14:21
23
Use spinner bar for a single URL check
04:44
24
Create a monitoring table showing the url, and the status with dynamic updates
03:57
25
Add color for up/down statuses
02:55
26
Adding Auto Complete
05:59
27
Exercise Solution
03:10
28
Introduction
04:10
29
Creating Custom Errors
03:27
30
Advanced logging techniques - log rotation and more!
15:03
31
Graceful Errors & Interactivity
06:38
32
Exercise Solution
12:11
33
Release Automation
03:19
34
Containerizing with Docker
10:00
35
Initial Automated Cross-Compilation Workflow with GoReleaser and Github actions
16:03
36
Automated Homebrew distribution
09:11
37
Automated Chocolatey distribution
19:18
38
Automated Docker distribution
08:16
39
Automated RPM and Deb files
08:39
40
Exercise Solution
17:56

Unlock unlimited learning

Get instant access to all 39 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Go (Golang) Programming The Complete Go Bootcamp 2023

Go (Golang) Programming The Complete Go Bootcamp 2023

Sources: udemy
Fully updated for 2021. This Go Programming course covers every major topic, including Pointers, Methods, and Interfaces (Go OOP), Concurrency In-Depth (Goroutines, Channels, Mu...
17 hours 49 minutes 29 seconds
Introduction to industry REST microservices in Golang (Go)

Introduction to industry REST microservices in Golang (Go)

Sources: udemy
In this course I'm doing the very same I've been doing for the past 6 years: Analysis, design and development of high-performance microservices in Go. This is not an introductio...
15 hours 45 minutes 33 seconds
Go: The Complete Developer's Guide (Golang)

Go: The Complete Developer's Guide (Golang)

Sources: udemy, Stephen Grider
Go is an open source programming language created by Google. As one of the fastest growing languages in terms of popularity, its a great time to pick up the ba
8 hours 21 minutes 45 seconds
Golang (Google go)

Golang (Google go)

Sources: udemy
Go is an amazing programming language that was created by the same guys who gave the world C (C), unix and utf-8 - some of the most influential contributions to the world of com...
17 hours 57 minutes 50 seconds