Skip to main content

Start and Stop Commands

Start​

To start Nidam with all of its included services, run:

.\nidam-launcher.ps1 start

By default, this starts Nidam with its included frontend, backend, and H2 database.

Excluding Services​

You can exclude one or more services when starting Nidam:

.\nidam-launcher.ps1 start -Exclude nidam,spa,h2

In this example, Nidam starts without its built-in backend, frontend, and H2 database.

The following services can be excluded:

"h2", "registration", "token-generator", "reverse-proxy", "bff", "nidam", "spa"

The services are:

ServiceDescription
h2Nidam's embedded H2 database
registrationHandles user registration
token-generatorHandles user authentication and token generation
bffHandles token ↔ session management
reverse-proxyServes Nidam services from a single origin
nidamNidam's built-in backend (resource server)
spaNidam's built-in frontend (React CRA application)

Fresh Mode​

The following command:

.\nidam-launcher.ps1 start -Exclude nidam,spa,h2

is used to starting Nidam without its built-in backend, frontend, and H2 database.

Because this is a common setup when using your own frontend, backend, and database, Nidam provides a shortcut:

.\nidam-launcher.ps1 start -Mode FRESH

Stop​

To stop Nidam:

.\nidam-launcher.ps1 stop

You can also stop a specific service.

For example, to stop Nidam's built-in backend so you can use your own:

.\nidam-launcher.ps1 stop nidam

Unlike -Exclude, the stop command accepts only one service at a time.

Restart​

Whenever you change configuration.yml, Nidam must be restarted for the changes to take effect.

.\nidam-launcher.ps1 restart

restart works like start, so it also supports the -Exclude option:

.\nidam-launcher.ps1 restart -Exclude nidam,spa,h2

Development

If you clone the Nidam repository and work directly with the source code instead of using the provided binaries, Nidam includes a development script with similar functionality to the production launcher.

The script is located at:

dev\nidam-dev.ps1

It provides the same start, -Exclude, FRESH, stop, and restart functionality described in the Start and Stop Commands section.

The only difference is that you cannot stop an individual service with the development script. To stop a specific service, open its terminal tab and press Ctrl+C.

Requirements​

Running Nidam from source requires:

Microsoft Terminal is also strongly recommended if you're on Windows.