Skip to content

Repository files navigation

Bob Walkthroughs

bob-walkthroughs is a central repository for all Bob tutorials. It has generic walkthroughs to learn how to use Bob, but it also has workspace specific walkthroughs for specific repositories.

Creating a Bob Walkthrough

You can create your own Bob lab walkthrough for a specific workspace/repository as part of this bob-walkthroughs extension, and then the lab walkthrough contents goes into the txc-lab repo (below). You can also create multiple walkthroughs for a given workspace/repository. The lab creator must set the walkthrough name(s) by creating a VS Code settings.json file in the lab repository/folder to determine which walkthroughs should be used.

Single walkthrough

{
  "bob-code.walkthrough": "myJavaApp"
}

Many walkthroughs

{
  "bob-code.walkthrough": ["learn-ui", "myJavaApp"]
}

Lab walkthrough content

For your lab content, put your repository as a submodule or as a folder in this monorepo: https://github.ibm.com/code-assistant/txc-lab

Do not forget that your lab directory needs the settings.json folder to make sure it connects to the walkthrough nicely.


Useful commands for walkthroughs

Opening a document: bob-walkthroughs.openDocument

In the walkthrough markdown, you can use an href to command:bob-walkthroughs.openDocument to open a document in the editor. You can also specify a range to select in the document. The parameter to the command is a JSON array with these parameters:

  • relative path to the document (relative to the root of the workspace)
  • optional range to select in the document as a string, in the format startLine-endLine (1-based)

The markdown looks like something akin to:

[Open document](command:bob-walkthroughs.openDocument?%5B%22frontend%2Fsrc%2Fwidgets%2Fcomments-feed%2Fcomments-feed.skeleton.tsx%22%2C%2215-16%22%5D)

The above example opens the file frontend/src/widgets/comments-feed/comments-feed.skeleton.tsx and selects lines 15-16. (["frontend/src/widgets/comments-feed/comments-feed.skeleton.tsx","15-16"])

Pro-tip: build the bob-walkthroughs extension and install it! We added a right click option to text editors to automatically generate the markdown link for you and copy it to your clipboard. This is easier than doing the URL encoding by hand. Look for Get markdown URL in the editor right-click menu.


Starting a prompt: bob-walkthroughs.chat.startPrompt

You can start a prompt in the chat with a predefined message. The parameter to the command is a JSON array with one parameter:

  • the prompt message as a string

The markdown looks like something akin to:

[Say hi!](command:bob-walkthroughs.chat.startPrompt?%5B%22Hello%21%20How%20are%20you%3F%22%5D)

Which is the value of ["Hello! How are you?"]


Status

Workshop Walkthrough status Content in monorepo Owner
IT Automation Done Done Matt Rodkey / Chetan Hireholi
IBM i Done Done Tim Rowe / Julio Sanchez
Java Done Done Jay Talekar / Dominik Zimny
Bob Done Done Michael Daschner

Local software requirements

Name For lab Reason
Bob * Obvious
Bobshell * Because Bob
Node.js 20+ * Needed for labs
npm * Needed for labs, comes with Node.js
git * Standard stuff
Docker IT Automation To mimic IaC. Will be using only docker-cli
Podman IT Automation To view deployed containers on system
Terraform IT Automation To provision docker containers
Ansible IT Automation To configure docker containers
Redis CLI IT Automation To test configuration changes made using Ansible
OWASP ZAP IT Automation Web application security scanner
Trivy IT Automation Container vuln scanner
ESLint with security plugins IT Automation Static code analysis
OWASP Dependency-Check IT Automation Identifies vulnerable deps
SDKMAN native: 0.7.4 macos aarch64 Java Java Install Tool
Java 8, 11, 17,21 Java Java Upgrade Process
Maven 3.9.0+ Java Java Build Tool
Gradle 9.0.0 Java Java Build Tool
Python 3.13 * Labs & Demos
IBM i Languages (extension) IBM i RPGLE highlighting
RPGLE (extension) IBM i RPGLE LSP

Notes

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages