Skip to content

Getting From Source

Jeff Yoshimi edited this page Feb 9, 2024 · 2 revisions

Summary

This page is for those who want to contribute to Simbrain development or build custom Simbrain scripts or in general modify or add Simbrain code. We use IntelliJ IDEA. The community edition is free.

To run Simbrain from source code, you will need to install (1) the java development kit or "JDK" (we recommend using Amazon Corretto 17), (2) git and related tools, and (3) an IDE, preferably IntelliJ. Once you have these programs installed, you can create a new project in IntelliJ.

Basic process

  1. Run IntelliJ and from the welcome screen, click Get from VCS.

  2. In the URL text box enter https://github.com/simbrain/simbrain (be sure Repository URL is selected on the left panel).

  3. Click clone

  4. A project will be created. It will take some time to download a bunch of things.

  5. Eventually you will see a gradle window on the right that with a run task in it (see below). If you can't find it, check the right side of the screen for an elephant icon. Or, If Simbrain then runs, you are good to go!

run task in intellij

Gotchas

  • You should use java 17
  • Set java 17 in Project Structure
    1. File > Project Structure
    2. Click Project (under Project Settings) on the left panel
    3. Change SDK to corretto-17

If you plan to submit pull requests

First, make this make sure you have an account on http://github.com.

If you plan to make changes and submit pull requests, you must fork the repository and then clone that fork.

  1. Click the fork button on the top right of this page. This creates a copy of the Simbrain repository in your personal account.
  2. You can see your newly forked personal copy of Simbrain at https://github.com/YOUR_ACCOUNT/simbrain.
  3. Clone the repository using
    • GithubDesktop,
    • the command line, or
    • the "fast process" described above (i.e., in Intellij, click GitHub on the left panel and then search for YOUR_ACCOUNT/simbrain and click clone).

The process for making actual pull requests is here.