Command-Line Interface (CLI) Reference

Command-Line Interface (CLI) Reference

The Numerous CLI Reference provides information about currently available commands and features.

The Numerous CLI is rapidly evolving. You might find commands that are not yet released or you may run into errors. This page contains a list of the available CLI commands.

Install

terminal
pip install numerous

The pip install numerous command installs the Numerous CLI to your computer.

Before you install the Numerous CLI, we recommend that you create and activate a Python virtual environment (opens in a new tab).

To see if the installation was successful, run:

terminal
numerous

Available commands and a help message will be displayed if the installation process was successful.
If you encounter an error message, check for errors and try again. If the problem persists, please reach out to us at support@numerous.com.

Initialize

terminal
numerous init

The initialization command numerous init bootstraps an app in the current directory. Specifically, it creates a file, numerous.toml, which contains the app configuration.

When you run the command, a wizard will help you fill in your app's name, a description, and the app engine you are using.

It also specifies the app entrypoint (your Python file), and your requirements.txt. Our server uses this information later when your app is being built.

💡

It is important that you are in the right directory when you call numerous init, since it initializes that directory for an app.

You can also specify the information from the wizard directly through flags to the command, for example: numerous init --name "My Project".

To see all available flags:

terminal
numerous init --help

Push

terminal
numerous push

The numerous push command uploads your app directory to our server. It will then be built, made available through a shared URL, and be printed to the terminal.

You can use this URL to open your app in the browser and send it to those you want to share your application with.

Ensure your terminal is navigated to your app directory when using the numerous push command.

💡

We currently support "shared" tools, which means that the tool instance is shared between all users. This means that any global state in the application is also shared between everyone who uses the application.

Exclude certain files and folders

We recommend excluding large files or folders when uploading into your project directory.

Certain files are excluded by default, specifically any folders matching *venv and venv* to filter out virtual environments as well as .git. This is done to avoid uploading the entire version control history with every push.

💡

In our current iteration, we create a file .tool_id.txt, which stores an identifier for the tool that manages the application. Take care to ensure this file is not deleted by accident.

Log in / Sign up to the CLI

terminal
numerous login

The numerous login command allows you to log in or sign up to the CLI.

Once the command is executed, you will be prompted to complete authentication with an 8-letter code (for example: XXXX-XXXX). You can press enter to open the browser or control + c to quit. Once the authentication code is verified, you will be prompted to either log in or sign up.

Once completed, the text in the terminal will confirm that you are successfully logged in.

Log out of the CLI

terminal
numerous logout

The numerous logout command allows you to log out of the CLI. Once the command is executed, text in the terminal will confirm that you are successfully logged out.

See available apps

terminal
numerous list

The numerous list command provides an overview of your available apps. Once the command is executed, you will be presented with a table that includes all of your available apps. The table includes each app's description, time created, its shareable URL, and public app gallery status.

Both the numerous list and numerous push commands output a shareable URL for your app. Using numerous list to obtain the shareable URL for your app may be helpful to use if you are not yet ready to push your app.

💡
You must be logged in to the CLI to use numerous list.

Publish

terminal
numerous publish

The numerous publish command makes your app available on the Public App Gallery at https://numerous.com/apps (opens in a new tab). Apps that have been published to the Public App Gallery are freely available for use. Once the command is executed, a public link to the app will be generated:

https://numerous.com/app/public/<some_hash>

This link is different from the link generated by the numerous push command.

Unpublish

terminal
numerous unpublish

The numerous unpublish command removes all access to an app through the public link generated by the numerous publish command. Additionally, the app will no longer be featured on the Public App Gallery at https://numerous.com/apps (opens in a new tab).

Unpublishing an app will not affect access through the link generated by the numerous push command.

Delete

terminal
numerous delete

The numerous delete command deletes an app that you no longer want to have on the Numerous platform. The app and its associated resources will be deleted once the command has been executed.

This command only deletes the selected app from the Numerous servers and does not affect your local folder.

💡

This command can only be executed if numerous init was previously executed.

Update the CLI

terminal
pip install --upgrade numerous

When using the Numerous platform, you will be informed when there is an update available. You will then be prompted to run the upgrade command.

Configure

name="Energy System Simulator"
description="An app for simulating energy systems."
library="streamlit"
python="3.11"
app_file="app.py"
requirements_file="requirements.txt"
port=8080
cover_image="my_cover.png"
exclude=["*venv", "venv*", ".git"]

A configuration file called numerous.toml is automatically created when the numerous init command is executed. Certain app elements can be modified by editing fields in your configuration file, such as renaming your app, changing your library, or excluding additional files.

For example, in the example configuration above, we could change the library from Streamlit to Marimo by updating the library field from “streamlit” to “marimo”.

💡

We recommend that you check numerous.toml into your version control system.

Use your own Dockerfile

If you have a Dockerfile in your project directory, the numerous push command will use it to build your app. Use this advanced option if you have a specific environment that you need to execute your app in.

Use the EXPOSE command to ensure the port specified in numerous.toml is the same port exposed in your Dockerfile.

To verify that your Dockerfile is being used, you can add a line such as RUN echo "Using custom Dockerfile" to your Dockerfile. You can then confirm that this line is printed in the output of the numerous push command.

If you are new to writing Dockerfiles or need help, please refer to the Dockerfile best practices (opens in a new tab).