Skip to main content

CLI for creating and managing Docker-based CAVE web applications.

Project description

CAVE CLI

A cross-platform CLI for creating and managing Docker-based CAVE web applications.

Developed by MIT-CAVE (Center for Transportation & Logistics). Licensed under Apache 2.0.

Prerequisites

Ubuntu
# Install Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh ./get-docker.sh
# Add the current user to the docker group
dockerd-rootless-setuptool.sh install
# Make sure it works outside of sudo
docker run hello-world
macOS
Windows

Installation

Install with pipx (recommended — keeps the CLI isolated from your system Python):

pipx install cave_cli

If you don't have pipx, install it first:

macOS
# With Homebrew (recommended)
brew install pipx
pipx ensurepath

# Or with pip
pip3 install --user pipx
pipx ensurepath
Other Linux / Windows (WSL)
python3 -m pip install --user pipx
pipx ensurepath

For more options see the pipx installation guide.

Verify the installation:

cave --version

Quick Start

cave create my_app
cd my_app
cave run
# Open http://localhost:8000/ in your browser

CLI Commands

cave --help

Core Commands

Command Description
cave create <name> Create a new CAVE app from the template repository
cave run Build Docker image and run the app

Peripheral Commands

Command Description
cave reset Remove containers/volumes and rebuild from scratch
cave upgrade Upgrade app files from the upstream template
cave sync --url <url> Merge files from another repository into the app
cave test Run tests in cave_api/tests/
cave prettify Format code with autoflake and black
cave purge <path> Remove an app and all its Docker resources

Utility Commands

Command Description
cave list List running CAVE apps
cave kill Stop Docker containers for an app
cave list-versions List available CAVE app versions
cave update Update the CAVE CLI itself
cave uninstall Remove the CAVE CLI
cave version Print version information

Global Flags

Flag Description
-v, --verbose Enable verbose (DEBUG) logging output
--loglevel LEVEL Set log level: DEBUG, INFO, WARN, ERROR, SILENT
-y, --yes Automatically answer confirmation prompts with yes

Updating

cave update

Or directly via pipx:

pipx upgrade cave_cli

License Notice

Copyright 2023 Massachusetts Institute of Technology (MIT), Center for Transportation & Logistics (CTL)

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cave_cli-3.5.1.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cave_cli-3.5.1-py3-none-any.whl (39.1 kB view details)

Uploaded Python 3

File details

Details for the file cave_cli-3.5.1.tar.gz.

File metadata

  • Download URL: cave_cli-3.5.1.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for cave_cli-3.5.1.tar.gz
Algorithm Hash digest
SHA256 6d3783296a649596fd1681e90057c802624f903c485457c8b612a9a859edec9b
MD5 0140618a3884050cc27066c251360648
BLAKE2b-256 76dd5ac101c471e980dac2c5d111b831d4cd2f73d30a3c73f9646ab1e81c301a

See more details on using hashes here.

File details

Details for the file cave_cli-3.5.1-py3-none-any.whl.

File metadata

  • Download URL: cave_cli-3.5.1-py3-none-any.whl
  • Upload date:
  • Size: 39.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for cave_cli-3.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 04522984a4dd9cca1762964bb371186bb846447c52878d51fff8d0c328d67900
MD5 007ce65ddf64d406afb248a594b8f2d1
BLAKE2b-256 7445c2c15ed4e390e86f552b5f9373abdb24c80d0fedc035cdd0bfa5095285ea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page