transsmute

command module
v1.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 9, 2024 License: GPL-3.0 Imports: 8 Imported by: 0

README

Transsmute

Transsmute Icon

Build Artifact Hub

Transsmute (transmute + RSS) is a server written in Go that builds RSS feeds for websites that don't provide them.

Currently, the following feed types are supported:

  • YouTube (channel, playlist)
  • Twitter (user)
  • Container registries (DockerHub, ghcr.io)

Installation

Transsmute can be installed as a container (suggested) or as a compiled binary.

Docker

A Docker container is available at ghcr.io/gabe565/transsmute. The containerized version of Transsmute will run on port 80 by default, and accepts all configuration as flags or as environment variables. See Configuration for more info.

docker run --rm -it -p 80:80 ghcr.io/gabe565/transsmute

Alternatively, an example docker-compose.yml file is provided.

Kubernetes

A Helm chart is available for Kubernetes deployment. For more information, see charts.gabe565.com or Artifact Hub.

Configuration

Flag Environment Variable Description Default
--address TRANSSMUTE_ADDRESS Listen address ":3000" (":80" in container)
--youtube-enabled TRANSSMUTE_YOUTUBE_ENABLED YouTube API enabled. true
--youtube-key TRANSSMUTE_YOUTUBE_KEY YouTube API key. Required to enable YouTube routes! ""
--docker-enabled TRANSSMUTE_DOCKER_ENABLED Docker API enabled. true
--dockerhub-username TRANSSMUTE_DOCKERHUB_USERNAME DockerHub username for private repos. ""
--dockerhub-password TRANSSMUTE_DOCKERHUB_PASSWORD DockerHub password for private repos. ""
--ghcr-username TRANSSMUTE_GHCR_USERNAME GitHub username for ghcr.io repos. ""
--ghcr-password TRANSSMUTE_GHCR_PASSWORD GitHub PAT for ghcr.io repos. ""
--twitter-enabled TRANSSMUTE_TWITTER_ENABLED Twitter API enabled. true
DockerHub

DockerHub credentials are only required to access private repositories.

ghcr.io

A personal access token is used to authenticate into GitHub's ghcr.io API. The only required scope is read:packages. Click here to generate a personal access token with the necessary scopes prefilled.

Routes

Feed Type

An Atom feed is generated by default, but a file extension of .json or .rss will change the output to the given format.

YouTube
  • /youtube/playlist/:playlistId
  • /youtube/channel/:channelId
Twitter
  • /twitter/user/:username
Docker
  • /docker/tags/:repo

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL