compterm

command module
v0.0.17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 27, 2023 License: MIT Imports: 23 Imported by: 0

README

Overview

Compterm is a versatile terminal sharing application designed for a variety of use cases, including educational, developmental, and nostalgic experiences. It's particularly useful for the Brazilian Golang Study Group, the Atomic Blast BBS system, and for efficient, low-bandwidth pair programming sessions.

Key Features

  • Terminal Sharing for Study Groups: Enables participants of the Brazilian Golang Study Group to view and discuss the same terminal, enhancing collaborative learning and code discussion.
  • BBS System Interface: Acts as a terminal for accessing the Atomic Blast BBS, emulating the look and feel of classic 90s BBSs.
  • Efficient Pair Programming: Facilitates quick and easy terminal sharing for pair programming, minimizing bandwidth usage.

Installation

To use Compterm, Go developers can build the program for production using:

Copy code
go build -ldflags '-s -w'
# or
make

For development mode, which uses resources from the assets directory, use:

Copy code
go run -tags dev .
# or
make dev

In production mode, resources are integrated into the executable itself.

Configuration

Compterm accepts the following command-line arguments:

  • -c string: Command to run (default: $SHELL)
  • -debug: Enable debug mode
  • -listen string: Listen address (default "0.0.0.0:2200")
  • -motd string: Message of the day

It also recognizes these environment variables:

  • $COMPTERM_DEBUG bool (default "false")
  • $COMPTERM_LISTEN string (default "0.0.0.0:2200")
  • $COMPTERM_C string
  • $COMPTERM_MOTD string (default "")

Additionally, you can configure Compterm using a config.ini file located in ~/.config/compterm/config.ini with the following parameters:

  • debug
  • listen
  • command
  • motd

Configuration Hierarchy

Command-line parameters override environment variables, which in turn override the configuration file settings.

Contributing

Contributions are welcome! Please refer to our contribution guidelines for details on how to contribute to this project.

License

This project is licensed under [include license type here], see the LICENSE file for details.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
Protocol package implements a simple protocol for sending and receiving data.
Protocol package implements a simple protocol for sending and receiving data.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL