Go to file
video-prize-ranch 94b74675b1 Update 'README.md' 2022-04-03 17:27:18 +02:00
api Caching (closes #18) 2022-03-15 22:56:34 -04:00
pages Readd Redirector config 2022-03-22 16:56:27 -04:00
static Readd Redirector config 2022-03-22 16:56:27 -04:00
types Display tags in posts (#11) 2022-02-21 12:14:00 -05:00
utils Allow fullscreen in permissions-policy 2022-02-02 10:20:14 -05:00
views Readd Redirector config 2022-03-22 16:56:27 -04:00
.dockerignore Add Dockerfile 2021-10-07 01:01:36 +09:00
.gitignore First commit: /a/, /gallery/, images, gifv 2021-10-07 01:00:58 +09:00
.gitlab-ci.yml Update buildx 2022-03-22 18:29:23 -04:00
Dockerfile Switch to scratch image 2022-03-19 15:58:12 -04:00
LICENSE Add README, LICENSE 2021-10-07 01:19:35 +09:00
README.md Update 'README.md' 2022-04-03 17:27:18 +02:00
config.yml Update README 2022-01-17 18:30:51 -05:00
docker-compose.yml Add official image to docker-compose 2022-03-19 16:00:48 -04:00
go.mod Update dependencies 2022-03-16 13:33:31 -04:00
go.sum Update dependencies 2022-03-16 13:33:31 -04:00
instances.json Update 'instances.json' 2022-04-02 03:04:02 +02:00
main.go Add support for .gifv (closes #13) and fixes loading media IDs 2022-02-22 19:06:39 -05:00

README.md

rimgo

An alternative frontend for Imgur. Based on rimgu and rewritten in Go.

License: AGPLv3 Matrix CI

It's read-only and works without JavaScript. Images and albums can be viewed without wasting resources from downloading and running tracking scripts. No sign-up nags.

Features

  • URL-compatible with i.imgur.com - just replace the domain in the URL
  • Images and videos (gifv, mp4)
  • Galleries with comments
  • Albums
  • User page
  • Tag page

Some things left to implement (contributions welcome!):

  • Streaming (currently media is downloaded in full in rimgu before it's returned)
  • Localization/internationalization
  • Pretty CSS styling (responsive?)
  • Support for other popular image sites
  • Filtering and exploration on user/tags pages
  • Responsive scaling of videos on user/tags pages
  • Logo

Things that are considered out of scope:

  • Uploading, commenting, voting, etc - rimgo is read-only.
  • Authentication, serving HTTPS, rate limiting, etc - Use a reverse proxy or load balancer like Caddy, Traefik, or NGINX.
  • Anything requiring JavaScript or the client directly interacting with upstream servers.

Instances

Open an issue to have your instance listed here!

Clearnet

URL Country Cloudflare
i.bcow.xyz (official) 🇨🇦 CA
rimgo.pussthecat.org 🇩🇪 DE
img.riverside.rocks 🇺🇸 US
rimgo.totaldarkness.net 🇨🇦 CA
rimgo.bus-hit.me 🇨🇦 CA
rimgo.esmailelbob.xyz 🇨🇦 CA
rimgo.lunar.icu 🇩🇪 DE 😢
i.actionsack.com 🇺🇸 US 😢

Tor

URL Country
l4d4owboqr6xcmd6lf64gbegel62kbudu3x3jnldz2mx6mhn3bsv3zyd.onion N/A
jx3dpcwedpzu2mh54obk5gvl64i2ln7pt5mrzd75s4jnndkqwzaim7ad.onion 🇺🇸 US
rimgo.lqs5fjmajyp7rvp4qvyubwofzi6d4imua7vs237rkc4m5qogitqwrgyd.onion 🇨🇦 CA
be7udfhmnzqyt7cxysg6c4pbawarvaofjjywp35nhd5qamewdfxl6sid.onion 🇦🇺 AU

I2P

URL Country
xazdnfgtzmcbcxhmcbbvr4uodd6jtn4fdiayasghywdn227xsmoa.b32.i2p 🇦🇺 AU

Install

rimgo can run on any platform Go compiles on.

Docker

Install Docker and docker-compose, then clone this repository.

git clone https://codeberg.org/video-prize-ranch/rimgo
cd rimgo

Edit the docker-compose.yml file using your favorite text editor.

nvim docker-compose.yml

You can now run rimgo.

sudo docker-compose up -d

Build from source

Requirements

  • Go v1.16 or later

Clone the repository and cd into it.

git clone https://codeberg.org/video-prize-ranch/rimgo
cd rimgo

Build rimgo.

go build

Edit the config file using your preferred editor.

nvim config.yml

You can now run rimgo.

./rimgo

Configuration

rimgo can be configured using environment variables or a config file.

Environment variables

Name Default
RIMGU_PORT 3000
RIMGU_HOST localhost
RIMGU_ADDRESS 0.0.0.0
RIMGU_IMGUR_CLIENT_ID 546c25a59c58ad7

Contributing

PRs are welcome! You can also send patches to cb.8a3w5@simplelogin.co but pull requests are preferred.

This software is released under the AGPL 3.0 license. In short, this means that if you make any modifications to the code and then publish the result (e.g. by hosting the result on a web server), you must publicly distribute your changes and declare that they also use AGPL 3.0.