Reviewed-on: https://codeberg.org/irelephant/kittygram/pulls/109
Kittygram
Kittygram is an anonymous, privacy-friendly, lightweight, and open-source Instagram frontend inspired by Nitter. It offers a clean, fast way to browse Instagram without the usual clutter or tracking.
The official Instagram web interface is heavy on JavaScript, slow to load, and filled with pop-ups. Kittygram avoids all of that by serving fully prerendered pages, making it faster and easier to use. Kittygram also helps you avoid the heavy tracking Instagram does, as all requests are handled by Kittygram.
Warning
Limitations:
Instagram aggressively rate-limits requests coming from servers, which can make running a public instance difficult.
Some features (such as stories) are not yet viewable.
Instances
| URL | Operated by | Notes |
|---|---|---|
| kittygram.irelephant.net | Irelephant | Kittygram maintainer |
| kittygr.am | FSKY | |
| kittygram.kareem.one | Kareem | Cloudflare |
| kittygram.nexussfan.cz | NexusSfan | |
| kg.lus.lu | ffb0f3 | |
| kg.meowing.de | patrick | |
| kittygram.nadeko.net | Fijxu | |
| kittygram.pussthecat.org | PussTheCat.org | |
| gram.utilibre.org | Utilibre | Cloudflare |
Also see the instances.json file.
Installation
Method 1: Containers
Docker
-
Clone the repository, move to the
kittygramfolder, set up Git LFS, and start the container:git clone git@codeberg.org:irelephant/kittygram.git --depth=1 && cd kittygram && git lfs pull sudo docker compose up
Podman
-
Install git, git-lfs, Podman and Podman Compose.
-
Clone the repository, move to the
kittygramfolder, set up Git LFS, and start the container:Warning
Don't run Podman as root (
sudo/doas).git clone https://codeberg.org/irelephant/kittygram.git --depth=1 && cd kittygram && git lfs pull podman-compose -p kittygram -f compose.yaml up -d
Podman Network
If you have DNS/network issues, check which DNS the container uses with podman compose exec kittygram cat /etc/resolv.conf.
You can also can try set firewall_driver to none in
.config/containers/containers.conf:
[network]
firewall_driver = "none"
Method 2: Native
-
Install openresty, redis or valkey, luarocks (likely in your distro's package manager) and git-lfs.
-
Clone the repository, move to the
kittygramfolder, and set up Git LFS.git clone https://codeberg.org/irelephant/kittygram.git --depth=1 && cd kittygram && git lfs pull -
Copy the example configuration files:
cp nginx.example.conf nginx.conf && cp config.example.lua config.lua -
Run:
luarocks init --lua-version=5.1 --lua-versions=5.1 CC="gcc -std=gnu99" luarocks build && lapis migrate production lapis serve production
License
Kittygram is licensed under the AGPL-3.0.
Community
Feel free to join the Matrix room, or email me at irelephant@disroot.org.
⭐ If you like this project, please consider giving it a star!
