Skip to main content

Interactive CLI application for learning Kubernetes

Project description

Kubepath

Master Kubernetes in Your Terminal

Python 3.12+ License: MIT Tests


What is Kubepath?

Kubepath is an interactive command-line application that teaches you Kubernetes right in your terminal. Instead of passively reading documentation or watching videos, you learn by doing — running real kubectl commands, debugging actual broken deployments, and building muscle memory through hands-on practice.

Whether you're a developer wanting to understand Kubernetes, a DevOps engineer looking to sharpen your skills, or someone preparing for the CKAD (Certified Kubernetes Application Developer) exam, Kubepath provides a structured, gamified learning experience that makes mastering Kubernetes fun and effective.


Why Kubepath?

  • Learn by Doing: Every concept is followed by hands-on practice on a real Kubernetes cluster
  • Real Debugging: Fix actual broken deployments, not toy examples
  • Instant Feedback: Know immediately if your commands are correct
  • AI-Powered Help: Stuck? Get intelligent hints from Google Gemini
  • Gamified Progress: Level up, maintain streaks, and track your journey
  • CKAD-Aligned: Content structured around official exam domains

Features

38 Chapters Across 6 CKAD Modules

Module Topics
Core Concepts Pods, Deployments, ReplicaSets, Services
Configuration ConfigMaps, Secrets, Environment Variables
Multi-Container Pods Sidecar, Ambassador, Adapter patterns
Observability Logging, Liveness & Readiness Probes, Monitoring
Pod Design Jobs, CronJobs, Labels, Selectors, Annotations
Services & Networking ClusterIP, NodePort, LoadBalancer, Ingress, NetworkPolicies

4-Section Learning Flow

Each chapter follows a proven learning structure:

Concepts     ->    Learn the theory with clear explanations     [No cluster needed]
Practice     ->    Run basic kubectl commands                   [Needs cluster]
Scenarios    ->    Debug real broken deployments                [Needs cluster]
Quiz         ->    Test your knowledge                          [No cluster needed]

Start without a cluster! You can learn concepts and take quizzes immediately. Set up the hands-on environment when you're ready for practice.

Gamification

  • 12 Levels: Progress from "Pod Seedling" to "Kubernetes Kurator"
  • Daily Streaks: Build consistency with streak tracking
  • Score Tracking: Earn points for correct answers, lose points for hints
  • Social Sharing: Share your achievements on X, LinkedIn, and Instagram

AI-Powered Hints

Stuck on a debugging scenario? Get intelligent, contextual hints powered by Google Gemini that guide you to the solution without giving away the answer.

Auto-Updates

Kubepath automatically checks for updates when you launch it and keeps itself current via Git.


Quick Start

Prerequisites

You can start learning Kubernetes concepts immediately without setting up a full Kubernetes environment! The concepts, quizzes, and theory sections work without any cluster. Set up the hands-on tools later when you're ready.

Minimum Required (to start learning)

Tool Why You Need It
Python 3.12+ Kubepath runs on Python
git To clone and receive auto-updates

Check Python:

python3 --version

Install Python if needed:

  • macOS: brew install python@3.12
  • Ubuntu/Debian: sudo apt install python3.12
  • Windows: Download from python.org

That's it! You can install Kubepath now and start learning concepts right away.


For Hands-On Practice (recommended, but optional to start)

To run actual kubectl commands and debug real deployments, you'll need a local Kubernetes cluster. Don't worry — you can set these up later when you reach the practice sections!

Tool What It Does
Docker Desktop Runs containers on your computer
kubectl The Kubernetes command-line tool (what you'll be learning!)
minikube Creates a local Kubernetes cluster on your laptop
Click to expand setup instructions
Docker Desktop

Docker lets you run containers — it's how Kubernetes works under the hood.

Download: docker.com/products/docker-desktop

After installing, make sure Docker is running (you'll see the whale icon in your menu bar/system tray).

kubectl

kubectl is the command-line tool for talking to Kubernetes.

Install:

Verify:

kubectl version --client
minikube

Minikube creates a local Kubernetes cluster on your laptop — your personal practice environment.

Install:

Start your cluster:

minikube start

This may take a few minutes the first time as it downloads the Kubernetes components.


Installation

Once you have the prerequisites, installing Kubepath is simple:

# Clone the repository
git clone https://github.com/nithin-nk/kubepath.git

# Navigate to the folder
cd kubepath

# Install uv (Python package manager) if you don't have it
pip install uv
# or on macOS: brew install uv

# Install dependencies and the kubepath package
uv sync
uv pip install -e .

# Start learning!
uv run kubepath

That's it! You should see the Kubepath main menu.

Troubleshooting: If you see ModuleNotFoundError: No module named 'kubepath', run:

uv pip install -e .

Commands

# Start the interactive learning experience
uv run kubepath

# List all available chapters
uv run kubepath list

# Jump to a specific chapter
uv run kubepath start 5

# Reset progress for a chapter
uv run kubepath start 3 --reset

# Get help
uv run kubepath --help

Learning Path

Here's what your journey looks like:

Chapter 1-7:   Core Concepts      ========----------------  18%
               Pods, Deployments, Services, ReplicaSets

Chapter 8-14:  Configuration      ============------------  37%
               ConfigMaps, Secrets, Resource Limits

Chapter 15-19: Multi-Container    ================--------  50%
               Sidecar, Init Containers, Ambassador

Chapter 20-26: Observability      ====================----  68%
               Probes, Logging, Debugging

Chapter 27-32: Pod Design         ========================  84%
               Jobs, CronJobs, Labels, Annotations

Chapter 33-38: Networking         ========================= 100%
               Ingress, NetworkPolicies, DNS

Gamification

Level Progression

Level Title Points Required
1 Pod Seedling 0
2 Container Cadet 100
3 Namespace Navigator 300
4 Deployment Apprentice 600
5 Service Scout 1,000
6 ConfigMap Crafter 1,500
7 Secret Keeper 2,100
8 Volume Voyager 2,800
9 Cluster Captain 3,600
10 Helm Hero 4,500
11 CKAD Champion 5,500
12 Kubernetes Kurator 6,600

Streak Tracking

Practice daily to build your streak! Kubepath tracks your consecutive days of learning and celebrates milestones at 3, 7, 14, 30, and 100 days.


Environment Variables

Variable Description
GEMINI_API_KEY Your Google Gemini API key for AI-powered hints (optional but recommended)
KUBEPATH_NO_UPDATE=1 Disable automatic update checks

To get a Gemini API key (free tier available):

  1. Go to ai.google.dev
  2. Click "Get API Key"
  3. Create a new API key
  4. Set it: export GEMINI_API_KEY="your-key-here"

Screenshots

Main Menu

+-----------------------------------------------------+
|               Welcome to Kubepath!                  |
|         Master Kubernetes in Your Terminal          |
|-----------------------------------------------------|
|  Level 5: Service Scout            7-day streak     |
|  Score: 1,250 pts                                   |
|  [========--------] 250/500 to Level 6              |
+-----------------------------------------------------+

Level Up Celebration

+=======================================================+
|                                                       |
|           *** LEVEL UP! ***                           |
|                                                       |
|      You are now a Service Scout!                     |
|                 Level 5                               |
|                                                       |
+=======================================================+

Contributing

We welcome contributions! Whether it's:

  • Fixing bugs
  • Adding new chapters
  • Improving documentation
  • Suggesting features

Please read our Contributing Guide to get started.


Maintainer

Nithin K Anil


License

This project is licensed under the MIT License - see the LICENSE file for details.


Acknowledgments

  • The Kubernetes community for incredible documentation
  • Google Gemini for AI-powered assistance
  • All contributors who help make Kubepath better

Ready to master Kubernetes? Start your journey today:

git clone https://github.com/nithin-nk/kubepath.git && cd kubepath && uv sync && uv pip install -e . && uv run kubepath

Happy learning!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kubepath-0.1.0.tar.gz (279.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kubepath-0.1.0-py3-none-any.whl (242.1 kB view details)

Uploaded Python 3

File details

Details for the file kubepath-0.1.0.tar.gz.

File metadata

  • Download URL: kubepath-0.1.0.tar.gz
  • Upload date:
  • Size: 279.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for kubepath-0.1.0.tar.gz
Algorithm Hash digest
SHA256 49988622b98f6ae3d1f7dcc35376636fb96daeefd479ba60a3189bcdb1db855c
MD5 07ad71a90c9c0c1c82dd25694eb529af
BLAKE2b-256 e6b98edf28cab0de479022309e35fc3eacb2c754393a9c55f546b2285402f0a8

See more details on using hashes here.

File details

Details for the file kubepath-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: kubepath-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 242.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for kubepath-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 315a00083dbcf6031ccbd601cef5d24aecb98a30803a2d285b409ece62818ec2
MD5 f215aaea456398205e0ddd3fb2142f5d
BLAKE2b-256 9beb69257e9ac9f0d3850814d676b061b3b4c295af8737a2651140346a002633

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page