Skip to content

關於本範本

這是什麼

netsim-template 是一個起始範本,用於建立瀏覽器中的網路模擬實驗環境。它打包了純前端技術堆疊—— Vue 3 + VitePress + Rust/WebAssembly 網路引擎——並附上一個 canonical 範例挑戰。fork 後填入你自己的挑戰內容,即可部署為靜態網站。

本範本刻意保持精簡。這裡不會提供現成課程,而是提供一個可以拿來建立課程的框架

這不是什麼

  • 不是完成版課程。原本內附的 11 道挑戰、概念頁面與教師指南均已移除,僅保留一個 canonical 範例。下游 fork 自行補充課程內容。
  • 對內容無預設立場。挑戰 DSL 接受任意拓撲、協定組合與難度設計。
  • 不鎖定語系。英文為主語系;繁體中文為運作良好的次語系;可透過 VitePress 原生 locales 機制再擴充其他語言。

範本內容物

組成功能
VitePress shell內建多語系支援的文件站架構
Vue 3 元件互動式模擬器 UI:終端、拓撲畫布、流量日誌、Flag 提交
Rust + WASM 引擎編譯為 WebAssembly 的真實協定模擬(Ethernet / ARP / IPv4 / TCP / HTTP)
挑戰 DSL以 YAML 為主的挑戰結構 schema(每個挑戰有 config.yaml + index.md
驗證腳本pnpm validate:challenges 於 commit 前強制檢查挑戰結構
QA pipelinepnpm testpnpm docs:buildpnpm qa:site-smoke 提供 build / 單元 / smoke 三道閘

開始使用

  • 📖 使用指南 — 學習操作 SimNet UI(終端、拓撲、流量日誌、防禦/修復工具)
  • 🏴‍☠️ 範例挑戰 — canonical 01-ethernet-basics 參考實作與作者快速入門
  • 🔧 開發者指南 — 系統架構、WASM 引擎、如何新增自己的挑戰

授權

本範本採 Educational Community License 2.0(ECL-2.0)發布,為教育社群量身打造的 Apache-2.0 風格授權。你可以自由使用、修改、散布。