MCPcopy Index your code
hub / github.com/SEVA77/circuitjs1

github.com/SEVA77/circuitjs1 @1.3.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.3.2 ↗ · + Follow
3,730 symbols 9,600 edges 207 files 72 documented · 2%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

CircuitJS1 Desktop Mod

Circuit Simulator is renamed CircuitJS1 Desktop Mod

The source code for offline version of the Circuit Simulator with minor modifications based on modified NW.js. It was originally written by Paul Falstad as a Java Applet. It was adapted by Iain Sharp to run in the browser using GWT. The program was modified and compiled to offline version for Windows (x32, x64), Linux (x32, x64) and MacOS (x64, arm64) by Usevalad Khatkevich.

This program is distributed by me as a program for education. It is not recommended to use the program for modeling real circuits, since many components in the program are idealized.

The program supports the following languages: English, Russian, Danish, German, Polish, Spanish, French, Italian, Portuguese, Czech, Norwegian, Chinese, Japanese.

For a web version of the application see:

Paul's Page: https://www.falstad.com/circuit/ \ Source code: https://github.com/pfalstad/circuitjs1

Iain's Page: https://lushprojects.com/circuitjs/ \ Source code: https://github.com/sharpie7/circuitjs1

Downloads:

You can download this program for Windows (x32, x64), Linux (x32, x64) and Mac OS X (x64, arm64): - Latest release - All Releases

If you have problems with this application, you can try to use this offline application of the main developer based on Electron.

Building the program

The tools you will need to build the project are:

  • JDK 8+
  • Maven 3+
  • Node.js with npm

Install the dependencies in the local node_modules folder:

npm install

For full build for all platforms without rebuilding GWT app run:

npm run build

For full build with rebuilding GWT app run:

npm run full

Output folder: ./out/

Also you can build only the GWT application:

npm run buildgwt

and run it in NW.js SDK version:

npm start

Output folder: ./target/site/

Development

Various build options, checker and devmod are available in the development menu:

npm run dev

Separate commands:

Check the build steps:

npm run check

Run devmode:

npm run devmode

Devmode works directly in the war directory separate from the target/site directory.

License

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

© Usevalad Khatkevich 2024

Credits

  • Paul Falstad - Creator
  • Iain Sharp - JavaScript conversion, so there are more opportunities for the development of this application.
  • Brian Gordon - Mavenized version of circuitjs1

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

LS
called by 443
src/main/java/com/lushprojects/circuitjs1/client/util/Locale.java
add
called by 365
src/main/java/com/lushprojects/circuitjs1/client/Choice.java
nextToken
called by 356
src/main/java/com/lushprojects/circuitjs1/client/StringTokenizer.java
get
called by 290
war/avr8js/src.avr8js.js
interpPoint
called by 290
src/main/java/com/lushprojects/circuitjs1/client/CircuitElm.java
drawThickLine
called by 219
src/main/java/com/lushprojects/circuitjs1/client/CircuitElm.java
setColor
called by 169
src/main/java/com/lushprojects/circuitjs1/client/Graphics.java
getClassCheckItem
called by 140
src/main/java/com/lushprojects/circuitjs1/client/CirSim.java

Shape

Method 3,315
Class 310
Function 104
Interface 1

Languages

Java88%
TypeScript12%

Modules by API surface

war/avr8js/src.avr8js.js429 symbols
src/main/java/com/lushprojects/circuitjs1/client/CirSim.java263 symbols
src/main/java/com/lushprojects/circuitjs1/client/CircuitElm.java139 symbols
src/main/java/com/lushprojects/circuitjs1/client/Scope.java107 symbols
src/main/java/com/lushprojects/circuitjs1/client/ChipElm.java50 symbols
src/main/java/com/lushprojects/circuitjs1/client/ScopePropertiesDialog.java40 symbols
src/main/java/com/lushprojects/circuitjs1/client/MosfetElm.java37 symbols
src/main/java/com/lushprojects/circuitjs1/client/TransistorElm.java33 symbols
src/main/java/com/lushprojects/circuitjs1/client/CompositeElm.java31 symbols
src/main/java/com/lushprojects/circuitjs1/client/Expr.java29 symbols
src/main/java/com/lushprojects/circuitjs1/client/ThreePhaseMotorElm.java28 symbols
src/main/java/com/lushprojects/circuitjs1/client/GateElm.java28 symbols

For agents

$ claude mcp add circuitjs1 \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact