Omgur is a free and open-source alternative Imgur front-end focused on privacy.
Inspired by the Invidious, Nitter, and Teddit projects.
- No JavaScript or ads
- All requests go through the backend, client never talks to Imgur
- Prevents Imgur from tracking your IP or JavaScript fingerprint
- Lightweight
- Self-hostable
- Direct image loading via https://i.imgur.com/
- Imgur album loading via https://imgur.com/a/
- Imgur gallery loading via https://imgur.com/gallery/
- Imgur post loading via https://imgur.com/
- Redis caching for images
- Proper embedding of videos on albums/galleries (direct loading already works)
- Mock tests of the functionality
- Render comments on Imgur posts
- Frontpage imgur url form
- Public API endpoints
Using Docker and docker-compose:
docker-compose build
docker-compose up
Omgur should now be running at http://localhost:8080.
Prebuilt images are also available at registry.wuhoo.xyz/jerry/omgur:latest
and registry.gitlab.com/geraldwuhoo/omgur:latest
.
- Install Golang.
- (Optional) Install redis-server. Caches images from imgur – highly recommended.
- Clone and set up the repository.
git clone https://wuhoo.xyz/jerry/gerald/omgur
cd omgur
go mod init git.geraldwu.com/gerald/omgur
go mod tidy
go build -v -a ./cmd/omgur
export REDIS_HOST=localhost
redis-server
./omgur
Omgur should now be running at http://localhost:8080. It is possible to change the listening port with the OMGUR_LISTEN_PORT
environment variable if you already have services using the default port 8080
.