knative / knative/client

Add a Developer Handbook

Open
#652 10 comments 0 reactions 0 assignees View on GitHub
kind/documentation kind/feature triage/accepted
Dominant language
Go
Stars
387
Forks
274
Avg merge
1d 6h
Merged PRs (30d)
8

Description

This "handbook" is supposed to be a standalone manual which should help to understand the development flow of the client and also should make it easier for newcomers to ramp up.

## Describe the feature:

A Developer Handbook should describe:

* How to get started with client development
* Described build.sh in detail
* How dependency are to be updated (see #58)
* How PR process works
* How E2E work and how they can be run locally
* How the code is organized (roughly)
* What the kn client API actually is
* How we deal with different version of Knative eventing & serving
* Deprecation process
* CLI option convention
- boolean options (wait, no-wait, ...)
- array options (traffic, ....)
- map options (env, label, ..)
* Mock Clients for Unit testing and how to use them

Part of #510

Contributor guide

Open the contributing guide

Research direction

Start by reviewing build.sh, the dependency-update context in issue #58, and the E2E and mock-client entry points mentioned in the request. Organize the handbook around the listed development, build, testing, API, versioning, deprecation, and CLI conventions topics; done means each requested area is covered for newcomers and the PR process is explained.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
cli, developer-experience, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.