$ cats nobody@supertxt.net:00-intro.s.txt

# SuperTXT Net

TXT
TL;DR This is a space for a collection of related bits (articles, specifications, and code). They are free for you to use for your own purposes. You can also combine them to make experiences like internet browsing with a novel set of values.

Our values:

It is for these reasons that we prefer simple text files, such as this one. It has a number of really great properties.

Do you want to learn more about this markup? A good place to start is the [:@SuperTXT getting started] guide.

If you want to explore the SuperTXT stack a good first step is to generate an identity for yourself using SSH (Secure SHell) if you haven't done this already. You can generate an SSH encryption key at any time from the standard OS shell.

.sh
ssh-keygen # The default options and an empty passphrase should fine.

Once you have your identity you can browse pages here from the shell with the full power of the command-line.

.sh
ssh supertxt.net # That's this page
ssh supertxt.net cat start.s.txt | more # This is the SuperTXT getting started guide, paged with more

If you prefer a more browser-like experience with full graphics and link navigation (using alt-click) there are two tools that work well together brsh (Browsing Shell) and [:@cats]. We have a homebrew tap that you can use to install them using the [:@brew] command. Homebrew can help you to keep everything up-to-date too.

→ (brew) https://brew.sh
.sh
brew tap supertxt/tap ssh://supertxt.net/git/st-brew
brew install supertxt/tap/cats supertxt/tap/brsh

Now that you've installed cats you can read files on this internet site from either the OS shell, or the Browsing Shell. It has built-in paging and a shorter syntax using pathname2, which is used by other common SSHLA (SSH Layer Application) tools like scp, rsync, and git.

.sh
cats supertxt.net: # This page
cats supertxt.net:start.s.txt # The SuperTXT getting started guide
cats supertxt.net: | grep 'brew' # What's brew again?

brsh can do much more than just run the cats command. It is a Unix compatible shell capable of handling many of the same commands you would use with something like bash, or zsh. Like the shell, it is responsible for running commands. Unlike the legacy shells, it can render the output beautifully using the graphics system. That's all it does, and so it can be really small because it doesn't have complex subsystems for networking, application scheduling, or local storage. The commands themselves manage all of these concerns for themselves, or delegate to something that does, such as SSH to handle identity, encryption, and networking.

The SuperTXT stack is composable, reusing OS concepts and subsystems where possible, sometimes in novel ways.

Since things are composable, they can be used in different configurations. You can use cats with brsh, or from the OS shell depending on what you want. Conversely, brsh can run virtually any OS command. The commands themselves can be used as hyperlinks that you can run in either environment, or shared with other people. If there's a problem with a command taking too long then you can use the standard OS tools to inspect its resource usage or even terminate it. SuperTXT format is line-oriented to work well with and be sympathetic to system tools, like grep, awk, and sort.

Assembling an internet browsing stack on top of the simple text and the OS required some tweaking and refinement of the legacy that exists there without reinventing parts of the OS itself. Users of the internet have certain expectations, such as seamless navigation of hyperlinks, and a browser that can view virtually any content type. Sometimes the missing parts can be filled with a new tool, like cats, or brsh. In other cases there is a format or convention that can be adopted by other developers to benefit the whole native app economy (eg. pathname2, sshla, and command reflection) if a common specification is published for that. Yet, there are often times that all that is needed is to articulate an idea or provide examples to help others to understand what's already out there that can be reused, such as SSH. This site serves as a library of code, specifications, and articles to help advance the state of native apps.

Sometimes comparisons can help to enlighten and explain. Here is an article that covers different aspects of the World-Wide-Web and how those things work with the SuperTXT stack.

→ articles/www-comparisons.s.txt

## News

This is the full news log:

→ news.s.txt

## Articles

Here are some popular articles:

→ (SuperTXT getting started) start.s.txt
→ browsing.s.txt
→ hosting.s.txt
→ (Options, Arguments, and Tables) options-arguments-tables.s.txt
→ (WA-Nine) articles/2023-11-22-announcing-wanine.s.txt

This is the full index of articles:

→ articles/index.s.txt

## Code

The following git repos are available:

→ (cats) git/cats.s.txt
→ (SuperTXT Integrations) git/st-int.s.txt
→ (homebrew tap) git/st-brew.s.txt

## Specifications

You can find detailed specifications here:

→ specs/index.s.txt

## Site Usage

You can learn more about this site's built-in commands in the manual.

.sh
ssh supertxt.net man # Show list of available commands
ssh supertxt.net man git # Show git usage

## Other SSH Sites

→ (known-hosts) .ssh/known_hosts

## Trust

Some content on this site is signed, such as git commits. Here's the list of allowed signers.

→ (allowed-signers) .ssh/allowed_signers

## Legal

→ (license) LICENSE.txt

## Contact Us

## Feedback

HAVE SOME FEEDBACK FOR US?

You can give us [:@conventional comments] for these documents. Here's how you can give this document some praise.

.sh
ssh supertxt.net ccmnt 00-intro.s.txt <<EOF
praise: Looks good
EOF
→ (conventional comments) https://conventionalcomments.org