Web-Ide mit aufgenommen

This commit is contained in:
Riwoldt
2026-04-09 14:14:56 +02:00
parent 64816c45cc
commit 15cfaf332d
489 changed files with 186891 additions and 0 deletions
+69
View File
@@ -0,0 +1,69 @@
name: Bug Report
description: File a bug report
type: "Bug"
body:
- type: markdown
attributes:
value: |
Thank you for taking the time to fill out a bug report on the NAND2Tetris Web IDE or VSCode Extension
- type: dropdown
id: program
attributes:
label: Tool
description: Select the tool about which you wish to report the bug / issue
options:
- Hardware Simulator
- CPU Emulator
- Assembler
- VM Emulator
- Jack Compiler
- General
- type: dropdown
id: interface
attributes:
label: Interface
description: Which NAND2Tetris interface were you using?
options:
- Website (https://nand2tetris.github.io/web-ide)
- VSCode Extension (coming soon, or manually installed)
- type: input
id: contact
attributes:
label: Contact Details
description: How can we get in touch with you if we need more info?
placeholder: ex. email@example.com
validations:
required: false
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true
- type: textarea
id: additional-comments
attributes:
label: Additional Comments
description: What else, if anything, would you like to share with us?
placeholder: "Tell us anything!"
validations:
required: false
- type: checkboxes
id: self-fix
attributes:
label: Do you want to try to fix this bug?
description: The IDE is written in TypeScript, and includes React components. Do you want to try to fix the bug yourself (optional question)? If so, you can fork the repo, try to make the fix, and submit a PR.
options:
- label: I want to try to add this feature!
required: false
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/nand2tetris/web-ide/blob/main/CODE_OF_CONDUCT.md)
options:
- label: I agree to follow this project's Code of Conduct
required: true
+69
View File
@@ -0,0 +1,69 @@
name: Feature Request
description: Request to add or improve a feature
type: "Feature"
body:
- type: markdown
attributes:
value: |
Thank you for taking the time to fill out a feature request on the NAND2Tetris Web IDE or VSCode Extension
- type: dropdown
id: program
attributes:
label: Tool
description: Select the tool for which you wish suggest a feature
options:
- Hardware Simulator
- CPU Emulator
- Assembler
- VM Emulator
- Jack Compiler
- General
- type: dropdown
id: interface
attributes:
label: Interface
description: Which NAND2Tetris interface were you using?
options:
- Website (https://nand2tetris.github.io/web-ide)
- VSCode Extension (coming soon, or manually installed)
- type: input
id: contact
attributes:
label: Contact Details
description: How can we get in touch with you if we need more info?
placeholder: ex. email@example.com
validations:
required: false
- type: textarea
id: what-happened
attributes:
label: What feature are you proposing?
description: Let us know
placeholder: Tell us what you see!
value: "Feature description"
validations:
required: true
- type: textarea
id: additional-comments
attributes:
label: Additional Comments
description: What else, if anything, would you like to share with us?
placeholder: Tell us anything!
validations:
required: false
- type: checkboxes
id: self-fix
attributes:
label: Do you want to try to add this feature?
description: The IDE is written in TypeScript, and includes React components. Do you want to try to implement this feature yourself? If so, you can fork the repo, try to make the fix, and submit a PR.
options:
- label: I want to try to add this feature!
required: false
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/nand2tetris/web-ide/blob/main/CODE_OF_CONDUCT.md)
options:
- label: I agree to follow this project's Code of Conduct
required: true
+51
View File
@@ -0,0 +1,51 @@
name: Deploy to gh-pages
on:
workflow_dispatch:
push:
branches: [main]
paths:
- simulator
- web
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20
uses: actions/setup-node@v3
with:
node-version: 20
- name: Cache node modules
id: cache-npm
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
key: ${{ hashFiles('**/package-lock.json') }}
- name: Install
run: npm install
- name: CD
run: |
git config --global user.name $user_name
git config --global user.email $user_email
git remote set-url origin https://${github_token}@github.com/${repository}
./stamp.sh
npm run build
npm run -w web deploy
VERSION=$(grep version package.json | awk -F\" '{print $4}')
git tag "$VERSION" main
git push origin "$VERSION"
git push origin main
env:
user_name: "github-actions[bot]"
user_email: "github-actions[bot]@users.noreply.github.com"
github_token: ${{ secrets.ACTIONS_DEPLOY_ACCESS_TOKEN }}
repository: ${{ github.repository }}
+45
View File
@@ -0,0 +1,45 @@
name: Build vscode extension
on:
workflow_dispatch:
push:
branches: [main]
paths:
- simulator
- extension
jobs:
package:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20
uses: actions/setup-node@v3
with:
node-version: 20
- name: Cache node modules
id: cache-npm
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
key: ${{ hashFiles('**/package-lock.json') }}
- name: Install
run: npm install
- name: CD
run: |
npm run build
npm run -w extension package
- name: Upload extension
uses: actions/upload-artifact@v3
with:
name: nand2tetris-vscode
path: |
extension/nand2tetris-vscode-*.vsix
+40
View File
@@ -0,0 +1,40 @@
name: Run Workspace Tests
on:
pull_request:
branches: ["main", "release/**"]
jobs:
all:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js 20
uses: actions/setup-node@v3
with:
node-version: 20
- name: Cache node modules
id: cache-npm
uses: actions/cache@v3
env:
cache-name: cache-node-modules
with:
# npm cache files are stored in `~/.npm` on Linux/macOS
path: ~/.npm
key: ${{ hashFiles('**/package-lock.json') }}
- if: ${{ steps.cache-npm.outputs.cache-hit == 'false' }}
name: List the state of node modules
continue-on-error: true
run: npm list
- name: Install
run: npm install
- name: CI
run: npm run ci
env:
CI: true