A CLI application that teaches AWS CDK in Python to software engineers.
Project description
CDK Tutor
A CLI application that teaches AWS CDK to users through interactive challenges.
Installation
With pip:
pip install cdk-tutor
With pipx:
pipx install cdk-tutor
With uvx:
uvx install cdk-tutor
Usage
List available challenges
cdk-tutor list-challenges
Start a challenge
cdk-tutor start [CHALLENGE_NAME]
If you don't specify a challenge name, you'll be prompted to choose from available challenges.
Grade a completed challenge
cdk-tutor grade [CHALLENGE_DIR]
Features
- Interactive CLI with rich text formatting
- Step-by-step challenges to learn AWS CDK
- Automatic grading of solutions
- Detailed feedback to help users improve
Challenge Structure
Each challenge includes:
- Starter code with TODOs to complete
- Clear instructions in a README
- Expected CloudFormation output for grading
- Solution files for reference
Development
To add new challenges:
- Create a new challenge in
src/cdk_tutor/challenges/ - Follow the
Challengemodel structure - Add your challenge to the list in
get_available_challenges()
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cdk_tutor-0.1.0.tar.gz.
File metadata
- Download URL: cdk_tutor-0.1.0.tar.gz
- Upload date:
- Size: 48.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9e04edba08fd6e79e41ee8d16962e22da0b2dc85a180aa0e5eb8193c8460225d
|
|
| MD5 |
a95a9d3e4d4d8925f4fb6f2057634128
|
|
| BLAKE2b-256 |
b96d1d7ee53d3baf9b0946eaa6cd48598ced4c89abc144eafb2cf8a0dcf98836
|
Provenance
The following attestation bundles were made for cdk_tutor-0.1.0.tar.gz:
Publisher:
deploy.yml on amirkarimi/cdk-tutor
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cdk_tutor-0.1.0.tar.gz -
Subject digest:
9e04edba08fd6e79e41ee8d16962e22da0b2dc85a180aa0e5eb8193c8460225d - Sigstore transparency entry: 258481401
- Sigstore integration time:
-
Permalink:
amirkarimi/cdk-tutor@7e1b6d92da9aec1b5be96b64281cf99d0c185bd8 -
Branch / Tag:
refs/tags/0.1.0 - Owner: https://github.com/amirkarimi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@7e1b6d92da9aec1b5be96b64281cf99d0c185bd8 -
Trigger Event:
release
-
Statement type:
File details
Details for the file cdk_tutor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: cdk_tutor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 18.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e3c19d36abcaad1016900b2f0bd41468f85c6294214c1deb6bfef915880db2b
|
|
| MD5 |
f82a419c0bd46cf27a03aed162e582cd
|
|
| BLAKE2b-256 |
816998c51841e278a1ae40c2e9b6b98cceda90e7d6427bb132139309b72d175d
|
Provenance
The following attestation bundles were made for cdk_tutor-0.1.0-py3-none-any.whl:
Publisher:
deploy.yml on amirkarimi/cdk-tutor
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
cdk_tutor-0.1.0-py3-none-any.whl -
Subject digest:
2e3c19d36abcaad1016900b2f0bd41468f85c6294214c1deb6bfef915880db2b - Sigstore transparency entry: 258481404
- Sigstore integration time:
-
Permalink:
amirkarimi/cdk-tutor@7e1b6d92da9aec1b5be96b64281cf99d0c185bd8 -
Branch / Tag:
refs/tags/0.1.0 - Owner: https://github.com/amirkarimi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy.yml@7e1b6d92da9aec1b5be96b64281cf99d0c185bd8 -
Trigger Event:
release
-
Statement type: