tildefriends/README.md

2.1 KiB

Tilde Friends

Tilde Friends is a tool for making and sharing.

A public instance lives at https://www.tildefriends.net/.

It is both a peer-to-peer social network client, participating in Secure Scuttlebutt, as well as a platform for writing and running web applications.

Goals

  1. Make it easy and fun to run all sorts of web applications.
  2. Provide security that is easy to understand and protects your data.
  3. Make creating and sharing web applications accessible to anyone with a browser.

Getting the Source

Tilde Friends uses git submodules, so either:

git clone --recurse-submodules https://dev.tildefriends.net/cory/tildefriends.git

or:

git clone https://dev.tildefriends.net/cory/tildefriends.git
cd tildefriends
git submodule update --init --recursive

The .tar.xz source releases are all-inclusive.

Building

Builds on Linux (x86_64 and aarch64), MacOS, OpenBSD, and Haiku. It's possible to build for Android, iOS, and Windows on Linux, if you have the right dependencies in the right places.

Requirements

On Linux only, system OpenSSL libraries (libssl-dev, in debian-speak) are assumed to be available.

On MacOS, Xcode's command-line tools are expected to be available.

Build Commands

Run make with no arguments to see available build targets and options. make debug is a good place to start.

To build in docker, docker build ..

make format and make prettier will normalize formatting to the coding standard.

Running

By default, running the built out/debug/tildefriends executable will start a web server at http://localhost:12345/. It expects to be run with the repository root as the current working directory. tildefriends -h lists further options.

The first user to create an account and log in will be granted administrative privileges. Further administration can be done at http://localhost:12345/~core/admin/.

Documentation

Docs are a work in progress: https://dev.tildefriends.net/cory/tildefriends/wiki.

License

All code unless otherwise noted in is provided under the MIT license.