Coder Social home page Coder Social logo

l-rutong / ttyd Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tsl0922/ttyd

0.0 0.0 0.0 9.18 MB

Share your terminal over the web

Home Page: https://tsl0922.github.io/ttyd

License: MIT License

CMake 0.44% C 95.34% Shell 0.78% JavaScript 0.56% HTML 0.08% Dockerfile 0.05% TypeScript 2.55% SCSS 0.20%

ttyd's Introduction

ttyd - Share your terminal over the web backend frontend

ttyd is a simple command-line tool for sharing terminal over the web.

screenshot

Features

  • Built on top of Libwebsockets with libuv for speed
  • Fully-featured terminal based on Xterm.js with CJK and IME support
  • Graphical ZMODEM integration with lrzsz support
  • SSL support based on OpenSSL
  • Run any custom command with options
  • Basic authentication support and many other custom options
  • Cross platform: macOS, Linux, FreeBSD/OpenBSD, OpenWrt, Windows

โค Special thanks to JetBrains for sponsoring the opensource license to this project.

Installation

Install on macOS

Install with homebrew:

brew install ttyd

Install on Linux

  • Binary version (recommended): download from the releases page.

  • Build from source (debian/ubuntu):

    sudo apt-get install build-essential cmake git libjson-c-dev libwebsockets-dev
    git clone https://github.com/tsl0922/ttyd.git
    cd ttyd && mkdir build && cd build
    cmake ..
    make && make install

    You may also need to compile/install libwebsockets from source if the libwebsockets-dev package is outdated.

  • Install on Gentoo: clone the repo and follow the directions here.

Install on Windows

Compile on Windows.

Install on OpenWrt

opkg install ttyd

Usage

Command-line Options

ttyd is a tool for sharing terminal over the web

USAGE:
    ttyd [options] <command> [<arguments...>]

VERSION:
    1.6.1

OPTIONS:
    -p, --port              Port to listen (default: 7681, use `0` for random port)
    -i, --interface         Network interface to bind (eg: eth0), or UNIX domain socket path (eg: /var/run/ttyd.sock)
    -c, --credential        Credential for Basic Authentication (format: username:password)
    -u, --uid               User id to run with
    -g, --gid               Group id to run with
    -s, --signal            Signal to send to the command when exit it (default: 1, SIGHUP)
    -a, --url-arg           Allow client to send command line arguments in URL (eg: http://localhost:7681?arg=foo&arg=bar)
    -R, --readonly          Do not allow clients to write to the TTY
    -t, --client-option     Send option to client (format: key=value), repeat to add more options
    -T, --terminal-type     Terminal type to report, default: xterm-256color
    -O, --check-origin      Do not allow websocket connection from different origin
    -m, --max-clients       Maximum clients to support (default: 0, no limit)
    -o, --once              Accept only one client and exit on disconnection
    -B, --browser           Open terminal with the default system browser
    -I, --index             Custom index.html path
    -b, --base-path         Expected base path for requests coming from a reverse proxy (eg: /mounted/here)
    -6, --ipv6              Enable IPv6 support
    -S, --ssl               Enable SSL
    -C, --ssl-cert          SSL certificate file path
    -K, --ssl-key           SSL key file path
    -A, --ssl-ca            SSL CA file path for client certificate verification
    -d, --debug             Set log level (default: 7)
    -v, --version           Print the version and exit
    -h, --help              Print this text and exit

Visit https://github.com/tsl0922/ttyd to get more information and report bugs.

Read the example usage on the wiki.

Browser Support

Modern browsers, See Browser Support.

Alternatives

ttyd's People

Contributors

tsl0922 avatar dependabot-preview[bot] avatar greenkeeper[bot] avatar dependabot[bot] avatar hosiet avatar shohey1226 avatar ideal avatar dduportal avatar bbilas avatar dohnuts avatar sthen avatar dmbasso avatar neelchauhan avatar oskar456 avatar peterdavehello avatar neheb avatar santosh0705 avatar wikiwang1991 avatar daixiang0 avatar bencao avatar dmayle avatar mpagano avatar ernstki avatar girtsf avatar fornwall avatar barracks510 avatar brugnara avatar atopuzov avatar adela0602 avatar abliss avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.