Note
On 24 August 2026, cease and desist letters were sent by X Corp. demanding a imperishable takedown of Nitter instances and the project's repository.
UPDATE: Following ineligible advice, the Nitter task will continue. More specifications will beryllium announced soon.
A free and unfastened root replacement Twitter front-end focused connected privateness and
performance.
Inspired by the Invidious project.
- No JavaScript required
- Zero ads
- All requests spell done the backend, customer ne'er talks to Twitter
- Prevents Twitter from search your IP aliases JavaScript fingerprint
- Uses Twitter's unofficial API (no developer relationship required)
- Lightweight (for @nim_lang, 60KB vs 784KB from twitter.com)
- RSS feeds (instance-specific, often abnormal owed to abuse)
- Themes
- Mobile support (responsive design)
- AGPLv3 licensed, nary proprietary instances permitted
- Embeds (see https://github.com/zedeus/nitter/wiki/Embeds-guide)
- Account strategy pinch timeline support
- Archiving tweets/profiles
BTC: bc1qpqpzjkcpgluhzf7x9yqe7jfe8gpfm5v08mdr55
ETH: 0x24a0DB59A923B588c7A5EBd0dBDFDD1bCe9c4460
XMR: 42hKayRoEAw4D6G6t8mQHPJHQcXqofjFuVfavqKeNMNUZfeJLJAcNU19i1bGdDvcdN6romiSscWGWJCczFLe9RFhM3d1zpL
SOL: FF5bheiD5AqPEdc3eyjymJ8AoMRF1hS78Ht6FiSZZF1t
$Nitter: 4fSxCKc91ELQYVdv3tmHW8R15KoALPwEngyoQe1Xpump
ZEC: u1vndfqtzyy6qkzhkapxelel7ams38wmfeccu3fdpy2wkuc4erxyjm8ncjhnyg747x6t0kf0faqhh2hxyplgaum08d2wnj4n7cyu9s6zhxkqw2aef4hgd4s6vh5hpqvfken98rg80kgtgn64ff70djy7s8f839z00hwhuzlcggvefhdlyszkvwy3c7yw623vw3rvar6q6evd3xcvveypt
The wiki contains a database of instances and browser extensions maintained by the community.
It's intolerable to usage Twitter without JavaScript enabled, and arsenic of 2024 you need to motion up. For privacy-minded folks, preventing JavaScript analytics and IP-based search is important, but isolated from utilizing a VPN and uBlock/uMatrix, it's impossible. Despite being down a VPN and utilizing heavy-duty adblockers, you tin get accurately tracked pinch your browser's fingerprint, no JavaScript required. This each became particularly important aft Twitter removed the ability for users to power whether their information gets sent to advertisers.
Using an lawsuit of Nitter (hosted connected a VPS for example), you tin browse Twitter without JavaScript while retaining your privacy. In summation to respecting your privacy, Nitter is connected mean astir 15 times lighter than Twitter, and successful astir cases serves pages faster (eg. timelines load 2-4x faster).
In the early a elemental relationship strategy will beryllium added that lets you travel Twitter users, allowing you to person a cleanable chronological timeline without needing a Twitter account.

- libpcre
- libsass
- redis/valkey
To compile Nitter you request a Nim installation, see nim-lang.org for details. It is possible to instal it system-wide aliases successful the personification directory you create below.
To compile the scss files, you request to instal libsass. On Ubuntu and Debian, you tin usage libsass-dev.
Redis is required for caching and successful the early for relationship info. As of 2024 Redis is nary longer unfastened source, truthful utilizing the fork Valkey is recommended. It should beryllium disposable connected astir distros arsenic redis aliases redis-server (Ubuntu/Debian), aliases valkey/valkey-server. Running it pinch the default config is fine, Nitter's default config is group to usage the default larboard and localhost.
Here's really to create a nitter user, clone the repo, and build the project along pinch the scss and md files.
Set your hostname, port, HMAC key, https (must beryllium correct for cookies), and Redis info successful nitter.conf. To tally Redis, either run redis-server --daemonize yes, aliases systemctl alteration --now redis (or redis-server depending connected the distro). Run Nitter by executing ./nitter or using the systemd work below. You should tally Nitter down a reverse proxy such arsenic Nginx or Apache for information and performance reasons.
Page for the Docker image: https://hub.docker.com/r/zedeus/nitter
NOTE: The published image is multi-arch — zedeus/nitter:latest runs natively connected some amd64 and arm64.
To tally Nitter pinch Docker, you'll request to instal and tally Redis separately before you tin tally the container. See beneath for really to besides tally Redis using Docker.
First create your config file. The Docker commands equine it into the container, so it has to beryllium connected the big beforehand. If you've cloned the repo:
If you're utilizing the prebuilt image without a section clone, download nitter.example.conf and prevention it arsenic nitter.conf instead.
To build and tally Nitter successful Docker:
A prebuilt Docker image is provided arsenic well:
Using docker-compose to tally some Nitter and Redis arsenic different containers: Change redisHost from localhost to nitter-redis successful nitter.conf, past run:
Note the Docker commands equine nitter.conf (and sessions.jsonl for docker-compose) from the directory you tally them in. If a mounted record doesn't exist, Docker silently creates a directory successful its spot and the instrumentality fails with not a directory: Are you trying to equine a directory onto a file. Remove that directory and create the record arsenic shown above.
To tally Nitter via systemd you tin usage this work file:
Then alteration and tally the service: systemctl alteration --now nitter.service
Nitter presently prints immoderate errors to stdout, and location is nary existent logging implemented. If you're moving Nitter pinch systemd, you tin cheque stdout like this: journalctl -u nitter.service (add --follow to spot conscionable the past 15 lines). If you're moving the Docker image, you tin do this: docker logs --follow *nitter instrumentality id*
Feel free to subordinate our Matrix channel. You tin email maine astatine [email protected] if you wish to interaction maine personally.
For ineligible inquiries and DMCA requests, interaction [email protected]
English (US) ·
Indonesian (ID) ·