NukeIDE is an open-source Integrated Development Environment (IDE) specifically designed for nuclear simulation and engineering. Built on the extensible Theia platform, NukeIDE provides a robust and customizable environment for computational physics, reactor design, fusion energy, and radiation transport.
- Integrated Development Environment: A full-featured IDE powered by Theia, providing a modern code editing experience.
- Extensible Architecture: Easily extendable with custom extensions for specialized nuclear engineering tasks.
- PWA Support: Progressive Web Application (PWA) capabilities for enhanced web-based deployment.
- Essential Extensions: Includes core extensions for common nuclear simulation workflows.
- Cross-Platform: Supports both browser-based and Electron-based desktop deployments.
To set up and run NukeIDE locally, follow these steps:
- Node.js (>=22)
- Yarn (>=1.7.0 <2)
-
Clone the repository:
git clone https://github.com/nukehub-dev/nuke-ide.git cd nuke-ide -
Install dependencies and build the project:
yarn
This command will install all root dependencies, hoist them, and then use Lerna to install dependencies and run
preparescripts for all workspaces (applications and extensions). -
Download Theia plugins:
yarn download:plugins
This command downloads pre-configured Theia plugins required for NukeIDE.
To start the browser-based version of NukeIDE:
yarn start:browserTo start the Electron-based desktop application:
yarn start:electronTo build all applications and extensions:
lerna run build-
Browser:
yarn build:browser
-
Electron:
yarn build:electron
Navigate to the extension directory (e.g., extensions/nuke-essentials) and run:
yarn build
# or
tscapplications/: Contains the different NukeIDE application builds (browser, electron, docker).extensions/: Houses all the custom Theia extensions developed for NukeIDE.resources/: Static assets like logos and HTML preload templates.configs/: Shared configuration files.
We welcome contributions to NukeIDE! Please refer to our GitHub Issues for ongoing tasks and discussions. Contribution guidelines, project conventions, and verification commands live in AGENTS.md — run yarn lint, yarn test:python, yarn test:ts, and npx lerna run build before committing.
NukeIDE is released under the BSD-2-Clause License.