This is a demo Rails app that shows how developers can integrate a command-line interfaces into existing Rails applications via Terminalwire.
The code from this project was used in demos recorded on YouTube.
This is a plain 'ol Rails app, so Rails developers should feel just at home getting this spun up. To get started run these commands:
# Clone the git repo
$ git clone https://github.com/terminalwire/demodns
# Switch into the directory
$ cd demodns
# Install dependencies
$ bundle
# Run the server
$ bin/rails server
Once the server is running, you can open in in your browser at https://localhost:3000.
The development Terminalwire thin-client is at ./bin/demodns, which you can run against your local development environment:
# Run the local demodns binary
$ ./bin/demodns
This demo is deployed to "production", 1GB Fly.io instance running SQLite, at https://demodns.fly.dev.
You may install DemoDNS on your system with the Terminalwire one-liner curl installer:
$ curl -LSs https://demodns.terminalwire.sh | bash
This installs the Terminalwire thin client to /opt/terminalwire
, configures the $PATH
to pick-up terminalwire-exec
, and installs the demodns
executable to your machine.
The Terminalwire files for this project are located in the ./app/terminal directory.
Documentation for these files may be found at the following:
- Terminalwire Rails Manual - Documentation for building Terminalwire apps on a Rails application server.
- Thor Website - Documentation for the Terminalwire command-line parser, which is the same one used by Rails, RubyGems, and many other command-line projects.
- Terminalwire Client Manual - Documentation for the Terminalwire thin-client, including client-side security features.