knative/client

Knative developer experience, docs, reference Knative CLI implementation

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 34 minutes ago
Added to GitGenius on April 8th, 2021
Created on December 13th, 2018
Open Issues & Pull Requests: 44 (+0)
Number of forks: 273
Total Stargazers: 387 (+0)
Total Subscribers: 19 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 191.6 days
Mean response time: 312.7 days
90th percentile: 932.0 days
Tracked items: 23

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 43
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,799 days
Stale 30+ days: 43
Stale 90+ days: 43

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • kind/feature (247)
  • kind/bug (130)
  • good first issue (96)
  • triage/accepted (90)
  • lifecycle/stale (80)
  • kind/proposal (50)
  • kind/cleanup (22)
  • kind/question (20)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

The knative/client repository contains the Kn CLI, the official command-line interface for interacting with Knative, a serverless computing platform built on Kubernetes. Written in Go, this project serves as the primary developer experience tool for Knative, enabling users to create and manage Knative resources directly from the command line or within automation scripts.

The Kn CLI provides comprehensive support for Knative Serving, allowing developers to manage services, revisions, and traffic splits across their serverless deployments. Support for Knative Eventing is actively growing in parallel with the eventing component's development, currently enabling management of event sources and triggers. The client implements a plugin architecture modeled after kubectl plugins, allowing the community to extend functionality through custom plugins. Beyond basic resource management, the repository includes a thin client-specific API in Go that handles complex operations like synchronously waiting on Knative service write operations, simplifying integration patterns for developers. The CLI also integrates with Tekton Pipelines, enabling Knative operations within Tekton Task definitions.

A key design principle of the Kn CLI is that it uses exclusively the Knative Serving and Knative Eventing APIs, ensuring compatibility with any Knative installation regardless of whether it runs on Kubernetes or alternative platforms. This API-first approach decouples the client from specific deployment infrastructure. The repository does not handle Knative installation itself, instead directing users to official Knative installation documentation and options.

The project is classified across multiple domains including command-line tools, microservices, event-driven architecture, serverless computing, cloud-native applications, and Kubernetes integration, reflecting its central role in the Knative developer workflow.

Documentation is comprehensive, with a user guide available at knative.dev covering common use cases, detailed command documentation, and extension patterns. Installation, configuration, and reference materials guide developers through setup and customization. The repository welcomes contributions through its CONTRIBUTING.md and DEVELOPMENT.md files, with help-wanted issues tracked through the CLOTRIBUTOR platform.