A moku-pona-like blogroll for the gemini protocol
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
2.9 KiB

# spacewalk
spacewalk is a site aggregation tool for the gemini protocol. It is inspired by moku-pona, which provides a similar service for gopher users.
## Requirements
The Go toolchain is required to build spacewalk. spacewalk was developed with Go version 1.12.4 and has not been tested with any earlier versions.
## Installation
A Makefile is included and installing for the system should be as simple as:
```shell
sudo make install
```
\* sudo may or may not be encessary depending on your system setup
To just take it for a spin by installing locally just run `make` from within the repo. This will generate a local file that can be run with `./spacewalk [command] [options...]`.
## Features
### Flights
spacewalk uses the concept of _flights_. Each flight represents a `text/gemini` formatted page that will be generated. Each of these pages can have as many gemini URLs associated with it as is desired.
Having the ability to have multiple _flights_ all managed by the same system allows for the powerful ability to create oldschool web-index style pages where you set up different themes or categories and have individual feeds underneath them. This allows for an organized system of curated links that, when spacewalk is set to run as a cron job or the like, get updated automatically.
For example: one might have the following _flights_ registered with their system:
- music
- blogs
- news
- cycling
They could create an index page that links to each flight's output file and they now have a really nice way to share the links they want in organized categories and have all of the content get put in order of newest to oldest.
_Flights_ are flexible though and you certainly do not need to use more than one if one does the job ;)
### Launches
Generating the output is called a _launch_ in spacewalk parlance. You can launch all of your flights at once with one command, or launch them individually. This allows for flexibility if you want to have your _flights_ update at different times.
### Output
spacewalk outputs a _flight_ as a `text/gemini` formatted document with a link to each page contained in the flight log. The links are titled with a title chosen at the time the url was added to the flight log. The links are listed in order of newest to oldest.
In addition, spacewalk allows for optionally adding in a header and/or footer. These are statically linked files and are concatenated together with the link listing at launch time.
## Thats all folks...
That is the basic information. A manpage _is_ included and will be installed when the `make install` option is used (it can also be read directly out of the repo folder if you prefer).
I developed this for fun and do not know how much maintenance I will be doing... but if you encounter something that doesn't seem right, please let me know by opening an issue for sending me an e-mail (can be found in the man page).