Web-Ide mit aufgenommen
@@ -0,0 +1 @@
|
||||
pico.css
|
||||
@@ -0,0 +1,51 @@
|
||||
<svg version="1.1" width="32" height="32" xmlns="http://www.w3.org/2000/svg">
|
||||
<style>
|
||||
:root {
|
||||
--outline: black;
|
||||
--block: red;
|
||||
--gate: cyan;
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--outline: white;
|
||||
--block: orange;
|
||||
--gate: green;
|
||||
}
|
||||
}
|
||||
|
||||
rect, path, circle {
|
||||
stroke: var(--outline);
|
||||
stroke-width: 1px;
|
||||
stroke-linecap: square;
|
||||
}
|
||||
|
||||
rect.tetris {
|
||||
--size: 8px;
|
||||
--offset: 1.5px + calc(10px - var(--size));
|
||||
fill: var(--block);
|
||||
width: var(--size);
|
||||
height: var(--size);
|
||||
x: calc(var(--x) * var(--size) + var(--offset) - 1px);
|
||||
y: calc(var(--y) * var(--size) + var(--offset) + 1px);
|
||||
}
|
||||
|
||||
.gate {
|
||||
fill: var(--gate);
|
||||
}
|
||||
|
||||
.letter {
|
||||
fill: var(--outline);
|
||||
}
|
||||
</style>
|
||||
|
||||
<rect class="tetris" style="--x: 0; --y: 2"></rect>
|
||||
<rect class="tetris" style="--x: 1; --y: 2"></rect>
|
||||
<rect class="tetris" style="--x: 1; --y: 1"></rect>
|
||||
<rect class="tetris" style="--x: 2; --y: 1"></rect>
|
||||
|
||||
<path class="gate" d="M2.5,1.5 h5 a 5 5 0 0 1 0,10 h-5 v-10"></path>
|
||||
<circle class="gate" cx="14.5" cy="6.5" r="2"></circle>
|
||||
|
||||
<path class="letter" d="M26,10 h-6 v-1 l5,-4 v-1 l-1,-1 h-2.5 l-.5,1 h-1 v-1 l1,-1 h4 l1,1 v2 l-5,4 h5 v1"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,24 @@
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>NAND2Tetris</title>
|
||||
<meta name="description" content="NAND2Tetris Web IDE" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta http-equiv="Cache-Control" content="no-cache" />
|
||||
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
|
||||
<link
|
||||
rel="shortcut icon"
|
||||
href="%PUBLIC_URL%/favicon.svg"
|
||||
type="image/svg+xml"
|
||||
/>
|
||||
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo_192.png" />
|
||||
<meta name="theme-color" content="rgb(16, 149, 193)" />
|
||||
<link rel="stylesheet" href="%PUBLIC_URL%/root.css" />
|
||||
<meta name="version" content="2025.49.0" />
|
||||
</head>
|
||||
<body class="flex">
|
||||
<noscript>You need to enable JavaScript to run this app.</noscript>
|
||||
<div id="root" class="flex-1 flex"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 23 KiB |
@@ -0,0 +1,42 @@
|
||||
{
|
||||
"short_name": "NAND2Tetris",
|
||||
"name": "NAND2Tetris",
|
||||
"icons": [
|
||||
{
|
||||
"src": "favicon.svg",
|
||||
"sizes": "32x32",
|
||||
"type": "image/svg+xml"
|
||||
},
|
||||
{
|
||||
"src": "logo_192.png",
|
||||
"type": "image/png",
|
||||
"sizes": "192x192"
|
||||
},
|
||||
{
|
||||
"src": "logo_512.png",
|
||||
"type": "image/png",
|
||||
"sizes": "512x512"
|
||||
}
|
||||
],
|
||||
"screenshots": [
|
||||
{
|
||||
"src": "user_guide/01_chip_empty.png",
|
||||
"sizes": "2660x2076",
|
||||
"type": "image/png",
|
||||
"form_factor": "wide",
|
||||
"label": "Empty Chip"
|
||||
},
|
||||
{
|
||||
"src": "user_guide/01_chip_empty_mobile.png",
|
||||
"sizes": "782x1692",
|
||||
"type": "image/png",
|
||||
"form_factor": "narrow",
|
||||
"label": "Empty Chip (Mobile)"
|
||||
}
|
||||
],
|
||||
"start_url": ".",
|
||||
"id": "/web-ide/",
|
||||
"display": "standalone",
|
||||
"theme_color": "rgb(16, 149, 193)",
|
||||
"background_color": "#ffffff"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
# https://www.robotstxt.org/robotstxt.html
|
||||
User-agent: *
|
||||
Disallow:
|
||||
@@ -0,0 +1,28 @@
|
||||
@import "./pico.min.css" layer(pico);
|
||||
/* @import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono&family=Poppins:wght@400;700&display=swap"); */
|
||||
@font-face {
|
||||
font-family: "JetBrains Mono";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
/* src: url(https://fonts.gstatic.com/s/jetbrainsmono/v18/tDbY2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKxjPQ.ttf) format('truetype'); */
|
||||
src: url(./jet_brains_mono.ttf) format("truetype");
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Poppins";
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
font-display: swap;
|
||||
/* src: url(https://fonts.gstatic.com/s/poppins/v21/pxiEyp8kv8JHgFVrFJA.ttf) format('truetype'); */
|
||||
src: url(./poppins_400.ttf) format("truetype");
|
||||
}
|
||||
@font-face {
|
||||
font-family: "Poppins";
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
font-display: swap;
|
||||
/* src: url(https://fonts.gstatic.com/s/poppins/v21/pxiByp8kv8JHgFVrLCz7V1s.ttf) format('truetype'); */
|
||||
src: url(./poppins_700.ttf) format("truetype");
|
||||
}
|
||||
|
||||
@layer pico component user;
|
||||
|
After Width: | Height: | Size: 856 KiB |
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 849 KiB |
|
After Width: | Height: | Size: 905 KiB |
|
After Width: | Height: | Size: 924 KiB |
|
After Width: | Height: | Size: 904 KiB |
|
After Width: | Height: | Size: 893 KiB |
|
After Width: | Height: | Size: 884 KiB |
|
After Width: | Height: | Size: 1.4 MiB |