├── .editorconfig ├── .eslintrc.cjs ├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .gitpod.yml ├── .husky └── pre-commit ├── .vscode └── extensions.json ├── LICENSE ├── README.md ├── app.config.ts ├── functions ├── assets │ └── siliwiz.tech.ts └── tsconfig.json ├── package.json ├── patches └── solid-record+0.2.1.patch ├── presets ├── LICENSE ├── blank.json ├── inverter.json ├── inverter_start.json ├── m2cap.json ├── mimcap.json ├── nmos.json ├── nmosfet.json ├── nmosfet_start.json ├── pmos.json ├── pmosfet.json ├── resistor.json └── skullfet.json ├── prettier.config.cjs ├── public ├── favicon.ico └── images │ ├── header-logo.png │ └── social-preview.png ├── src ├── app.css ├── app.tsx ├── components │ ├── AnalyticsScript.tsx │ ├── Canvas.module.css │ ├── Canvas.tsx │ ├── CrossSection.tsx │ ├── CrossSectionSlider.tsx │ ├── DRCList.module.css │ ├── DRCList.tsx │ ├── Editor.tsx │ ├── Footer.tsx │ ├── GitHubIcon.tsx │ ├── Graph.tsx │ ├── Header.tsx │ ├── Layers.module.css │ ├── Layers.tsx │ ├── LinkBox.tsx │ ├── MainView.tsx │ ├── Presets.tsx │ ├── Scale.tsx │ ├── Siliwiz.tsx │ ├── SimulationParams.tsx │ └── SpiceCodeView.tsx ├── config │ ├── consts.ts │ └── theme.ts ├── css-modules.d.ts ├── entry-client.tsx ├── entry-server.tsx ├── model │ ├── drc.ts │ ├── layerTypes.ts │ ├── layout.ts │ ├── magic.ts │ ├── runMagic.ts │ ├── simulationResult.ts │ ├── spiceFile.ts │ ├── stl.ts │ └── viewerState.ts ├── sim │ ├── simulate.ts │ └── spice │ │ ├── LICENSE.txt │ │ ├── createSpice.ts │ │ ├── spice.d.ts │ │ ├── spice.js │ │ └── spice.wasm ├── utils │ ├── download-file.ts │ ├── files.ts │ ├── geometry.ts │ ├── json.ts │ ├── keyboard.ts │ ├── math.ts │ ├── tcl-parser.ts │ ├── time.ts │ └── user-agent.ts └── version.d.ts └── tsconfig.json /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/.eslintrc.cjs -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitpod.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/.gitpod.yml -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | . "$(dirname -- "$0")/_/husky.sh" 3 | 4 | npx lint-staged 5 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/README.md -------------------------------------------------------------------------------- /app.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/app.config.ts -------------------------------------------------------------------------------- /functions/assets/siliwiz.tech.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/functions/assets/siliwiz.tech.ts -------------------------------------------------------------------------------- /functions/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/functions/tsconfig.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/package.json -------------------------------------------------------------------------------- /patches/solid-record+0.2.1.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/patches/solid-record+0.2.1.patch -------------------------------------------------------------------------------- /presets/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/LICENSE -------------------------------------------------------------------------------- /presets/blank.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/blank.json -------------------------------------------------------------------------------- /presets/inverter.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/inverter.json -------------------------------------------------------------------------------- /presets/inverter_start.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/inverter_start.json -------------------------------------------------------------------------------- /presets/m2cap.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/m2cap.json -------------------------------------------------------------------------------- /presets/mimcap.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/mimcap.json -------------------------------------------------------------------------------- /presets/nmos.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/nmos.json -------------------------------------------------------------------------------- /presets/nmosfet.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/nmosfet.json -------------------------------------------------------------------------------- /presets/nmosfet_start.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/nmosfet_start.json -------------------------------------------------------------------------------- /presets/pmos.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/pmos.json -------------------------------------------------------------------------------- /presets/pmosfet.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/pmosfet.json -------------------------------------------------------------------------------- /presets/resistor.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/resistor.json -------------------------------------------------------------------------------- /presets/skullfet.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/presets/skullfet.json -------------------------------------------------------------------------------- /prettier.config.cjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/prettier.config.cjs -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /public/images/header-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/public/images/header-logo.png -------------------------------------------------------------------------------- /public/images/social-preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/public/images/social-preview.png -------------------------------------------------------------------------------- /src/app.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/app.css -------------------------------------------------------------------------------- /src/app.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/app.tsx -------------------------------------------------------------------------------- /src/components/AnalyticsScript.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/AnalyticsScript.tsx -------------------------------------------------------------------------------- /src/components/Canvas.module.css: -------------------------------------------------------------------------------- 1 | /* SPDX-License-Identifier: Apache-2.0 */ 2 | 3 | .rect:hover { 4 | stroke: yellow; 5 | } 6 | -------------------------------------------------------------------------------- /src/components/Canvas.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Canvas.tsx -------------------------------------------------------------------------------- /src/components/CrossSection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/CrossSection.tsx -------------------------------------------------------------------------------- /src/components/CrossSectionSlider.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/CrossSectionSlider.tsx -------------------------------------------------------------------------------- /src/components/DRCList.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/DRCList.module.css -------------------------------------------------------------------------------- /src/components/DRCList.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/DRCList.tsx -------------------------------------------------------------------------------- /src/components/Editor.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Editor.tsx -------------------------------------------------------------------------------- /src/components/Footer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Footer.tsx -------------------------------------------------------------------------------- /src/components/GitHubIcon.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/GitHubIcon.tsx -------------------------------------------------------------------------------- /src/components/Graph.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Graph.tsx -------------------------------------------------------------------------------- /src/components/Header.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Header.tsx -------------------------------------------------------------------------------- /src/components/Layers.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Layers.module.css -------------------------------------------------------------------------------- /src/components/Layers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Layers.tsx -------------------------------------------------------------------------------- /src/components/LinkBox.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/LinkBox.tsx -------------------------------------------------------------------------------- /src/components/MainView.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/MainView.tsx -------------------------------------------------------------------------------- /src/components/Presets.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Presets.tsx -------------------------------------------------------------------------------- /src/components/Scale.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Scale.tsx -------------------------------------------------------------------------------- /src/components/Siliwiz.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/Siliwiz.tsx -------------------------------------------------------------------------------- /src/components/SimulationParams.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/SimulationParams.tsx -------------------------------------------------------------------------------- /src/components/SpiceCodeView.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/components/SpiceCodeView.tsx -------------------------------------------------------------------------------- /src/config/consts.ts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: Apache-2.0 2 | 3 | export const repo = 'https://github.com/TinyTapeout/siliwiz'; 4 | -------------------------------------------------------------------------------- /src/config/theme.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/config/theme.ts -------------------------------------------------------------------------------- /src/css-modules.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/css-modules.d.ts -------------------------------------------------------------------------------- /src/entry-client.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/entry-client.tsx -------------------------------------------------------------------------------- /src/entry-server.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/entry-server.tsx -------------------------------------------------------------------------------- /src/model/drc.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/drc.ts -------------------------------------------------------------------------------- /src/model/layerTypes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/layerTypes.ts -------------------------------------------------------------------------------- /src/model/layout.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/layout.ts -------------------------------------------------------------------------------- /src/model/magic.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/magic.ts -------------------------------------------------------------------------------- /src/model/runMagic.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/runMagic.ts -------------------------------------------------------------------------------- /src/model/simulationResult.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/simulationResult.ts -------------------------------------------------------------------------------- /src/model/spiceFile.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/spiceFile.ts -------------------------------------------------------------------------------- /src/model/stl.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/stl.ts -------------------------------------------------------------------------------- /src/model/viewerState.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/model/viewerState.ts -------------------------------------------------------------------------------- /src/sim/simulate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/sim/simulate.ts -------------------------------------------------------------------------------- /src/sim/spice/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/sim/spice/LICENSE.txt -------------------------------------------------------------------------------- /src/sim/spice/createSpice.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/sim/spice/createSpice.ts -------------------------------------------------------------------------------- /src/sim/spice/spice.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/sim/spice/spice.d.ts -------------------------------------------------------------------------------- /src/sim/spice/spice.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/sim/spice/spice.js -------------------------------------------------------------------------------- /src/sim/spice/spice.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/sim/spice/spice.wasm -------------------------------------------------------------------------------- /src/utils/download-file.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/download-file.ts -------------------------------------------------------------------------------- /src/utils/files.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/files.ts -------------------------------------------------------------------------------- /src/utils/geometry.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/geometry.ts -------------------------------------------------------------------------------- /src/utils/json.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/json.ts -------------------------------------------------------------------------------- /src/utils/keyboard.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/keyboard.ts -------------------------------------------------------------------------------- /src/utils/math.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/math.ts -------------------------------------------------------------------------------- /src/utils/tcl-parser.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/tcl-parser.ts -------------------------------------------------------------------------------- /src/utils/time.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/time.ts -------------------------------------------------------------------------------- /src/utils/user-agent.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/utils/user-agent.ts -------------------------------------------------------------------------------- /src/version.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/src/version.d.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TinyTapeout/siliwiz/HEAD/tsconfig.json --------------------------------------------------------------------------------