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
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:
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
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:
numerous init --help
Push
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
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
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
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.
numerous list
.Publish
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
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
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
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).