aboutsummaryrefslogtreecommitdiff
path: root/course/chapters/01-orientation.json
diff options
context:
space:
mode:
authorAgando <roduccomm@gmail.com>2026-10-18 14:05:18 +0200
committerAgando <roduccomm@gmail.com>2026-10-18 14:05:18 +0200
commit0d0d936e7b5cd41a31773069540b1ddb8836ef44 (patch)
tree273e7ee9a72453655119bf0f63efb9b61e193d7f /course/chapters/01-orientation.json
parent526c420f4591f0a58f805b473fa76d3da2981eae (diff)
newOS4: interactive AI course (terminal module, portal, atlas, telemetry, daily maintenance+cron) + free store card
Diffstat (limited to 'course/chapters/01-orientation.json')
-rw-r--r--course/chapters/01-orientation.json132
1 files changed, 132 insertions, 0 deletions
diff --git a/course/chapters/01-orientation.json b/course/chapters/01-orientation.json
new file mode 100644
index 0000000..165e140
--- /dev/null
+++ b/course/chapters/01-orientation.json
@@ -0,0 +1,132 @@
+{
+ "id": "01-orientation",
+ "title": "Orientation — what newOS4 is",
+ "icon": "🚀",
+ "level": "beginner",
+ "lessons": [
+ {
+ "id": "1.1",
+ "title": "A terminal in your browser",
+ "objective": "Understand what newOS4 is and run your first three commands.",
+ "minutes": 6,
+ "commands": [
+ "help",
+ "status",
+ "ls"
+ ],
+ "blocks": [
+ {
+ "type": "text",
+ "text": "newOS4 is a terminal-centric browser OS. Every command runs in your tab, files live in a virtual filesystem (VFS), and modules add commands at runtime."
+ },
+ {
+ "type": "cmd",
+ "text": "help"
+ },
+ {
+ "type": "text",
+ "text": "`help` lists every registered command grouped by the module that owns it."
+ },
+ {
+ "type": "cmd",
+ "text": "status"
+ },
+ {
+ "type": "cmd",
+ "text": "ls"
+ },
+ {
+ "type": "tip",
+ "text": "The VFS survives reloads. Create a file with `touch notes.txt`, then run `ls`."
+ }
+ ],
+ "exercise": {
+ "instruction": "Run `status` and read the loaded-modules line.",
+ "accept": [
+ "status"
+ ],
+ "check": {
+ "type": "command"
+ },
+ "hint": "Type: status"
+ },
+ "quiz": {
+ "q": "Where do files live in newOS4?",
+ "options": [
+ "On the web server",
+ "In the browser VFS",
+ "In a SQL database"
+ ],
+ "answer": 1
+ },
+ "sources": [
+ "modules/core/terminal.js",
+ "modules/core/virtual-fs.js"
+ ]
+ },
+ {
+ "id": "1.2",
+ "title": "Finding your way around",
+ "objective": "Navigate the virtual filesystem and create your first file.",
+ "minutes": 8,
+ "commands": [
+ "pwd",
+ "cd",
+ "tree",
+ "cat",
+ "touch"
+ ],
+ "blocks": [
+ {
+ "type": "text",
+ "text": "The VFS is a tree rooted at `/`. `pwd` prints where you are, `cd` moves, `tree` shows the branch, `cat` prints a file."
+ },
+ {
+ "type": "cmd",
+ "text": "pwd"
+ },
+ {
+ "type": "cmd",
+ "text": "tree"
+ },
+ {
+ "type": "warn",
+ "text": "`echo \"text\" > file` is NOT supported by the VFS. Use `touch`, the editor (`edit <file>`), or `webx11.fs.writeFile()` in the console."
+ },
+ {
+ "type": "cmd",
+ "text": "touch hello.txt"
+ },
+ {
+ "type": "cmd",
+ "text": "ls"
+ }
+ ],
+ "exercise": {
+ "instruction": "From the root, create `hello.txt` and list it.",
+ "accept": [
+ "touch hello.txt",
+ "ls"
+ ],
+ "check": {
+ "type": "file",
+ "path": "/hello.txt"
+ },
+ "hint": "Type: touch hello.txt — then ls"
+ },
+ "quiz": {
+ "q": "Which command prints the current directory?",
+ "options": [
+ "ls",
+ "pwd",
+ "cd"
+ ],
+ "answer": 1
+ },
+ "sources": [
+ "modules/core/module-fs.js",
+ "modules/core/virtual-fs.js"
+ ]
+ }
+ ]
+} \ No newline at end of file