Categorygithub.com/harshau007/DevControl
modulepackage
1.1.0
Repository: https://github.com/harshau007/devcontrol.git
Documentation: pkg.go.dev

# README

DevControl

DevControl

DevControl is a powerful command-line interface tool built in Go using Cobra, Docker Engine API, and Bubbletea. It allows users to create and manage isolated containers with their desired technology stacks, such as Node.js, Python, Rust, and more.

Features

  • create : Create a new isolated container with your desired technology stack.
  • start : Start an existing container.
  • stop : Stop a running container.
  • ps : List containers and their status.
  • rm : Remove container.
  • images : List all images.
  • rmi : Remove images.

Prerequisites

Before using DevControl, ensure that you have the following installed:

  • Docker

Installation

You can install DevControl by following these step

Linux and MacOS

curl -fsSL https://raw.githubusercontent.com/harshau007/devcontrol/main/install.sh | sh

OR

Install via makepkg

  • Run inside pkgbuild/
makepkg -si 

Uninstallation

You can uninstall DevControl by following these step

Linux and MacOS

sudo rm -rf /usr/bin/devctl /usr/bin/portdevctl /usr/bin/startdevctl /usr/local/share/devcontrol/

Usage

After installing DevControl, you can use the following commands:

TIP: Initial images creation may take some time depending on your internet speed.

Demo video: Watch the video

create

devctl create [OPTIONS]

Creates a new isolated container with the specified technology stack. Available technologies include nodejs, python, rust, and more.

Options

  • --name, -n (string): Specify a name for the container.
  • --volume, -v (string): Specify the volume to mount.
  • --package, -p (string): Specify the technology to use.
  • --url, -u (string): Specify the URL to clone the repository.

Note: If you specify the --url option, DevControl will clone the repository and use the cloned repository as the volume. Default directory is Desktop

start

devctl start [OPTIONS]

Starts the specified container.

Options

  • --name, -n (string): Specify a name for the container.

stop

devctl stop [OPTIONS]

Stops the specified running container.

Options

  • --name, -n (string): Specify a name for the container.

ps

devctl ps [OPTIONS]

Lists running containers and their status.

  • --all, -a : List all containers

rm

devctl rm [OPTIONS] CONTAINER [CONTAINER...]

Remove images.

  • --force, -f : Force remove containers.

images

devctl images

Lists all images.

rmi

devctl rmi [OPTIONS] IMAGE [IMAGE...]

Remove images.

  • --force, -f : Force remove images.

Contributing

Contributions to DevControl are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.

License

DevControl is released under the GNU General Public License.

Acknowledgments

# Packages

Copyright © 2024 Harsh Upadhyay [email protected] */.