Start a project
The recipe below installs the engine and starts a project. Once started you can explore the project via http://127.0.0.1:3113. Select llm to let the installer set up the harness for you, or select no llm.# Install iii
$curl -fsSL https://install.iii.dev/iii/main/install.sh | sh
# Open your browser to http://127.0.0.1:3113
# Create a project
$iii project init my-app && cd my-app
# Start your project
$
# Open your browser to http://127.0.0.1:3113
# You can also check out iii.dev/docs/quickstart to learn more about iii
Installer options
The installer takes its options aftersh -s --. To see them all:
Run the setup against an installed engine
--skip-bin-download skips the download and the install, and runs the setup offer against the iii
that is on the machine already. Use it to repeat the setup, or when you build the engine yourself:
Install a pre-release
Use--next for the latest next pre-release, or --rc for the latest release candidate:
Install without questions
The installer asks nothing when no terminal is attached. Adocker build step, a CI job, and a
plain curl ... | sh in a script are already non-interactive, and they do the install and then
print the setup command.
--non-interactive makes that behavior explicit, and keeps it when a terminal is attached. The
effect is the same as an answer of n at the prompt: the installer does the install, does not run
the setup, and prints the setup command. Use it when a terminal is attached but you want the install
only, for example docker run -it, docker compose run, or a wrapper that gives the command a
terminal:
III_NON_INTERACTIVE does the same:
Start the harness with your workers
--start-with takes a comma-separated worker list. The setup offer at the end of the install
scaffolds a harness project named after the first worker in the list, starts it, and adds every
worker in the list with compose::add:
iii-database, starts it, then adds the database and storage workers. Each
added worker reads the project .env file. Put onboarding in the list to also get the guided tour
that the plain install offers.
Ask for more environment variables
--need-envs takes a comma-separated list of variable names. The setup asks for each one after the
inference provider key, writes the answers to the project .env file, and puts them in the
environment of the iii compose --up process. Use it for a worker that needs its own key:
--need-envs is only valid together with --start-with.
Control the install with environment variables
Next Steps
Quickstart
Follow the Quickstart and explore a live iii application.
Use iii
Learn how to use iii in production.