Shreddit is an unofficial Violentmonkey/Tampermonkey userscript that shreds modern Reddit's visual clutter into a flat, fast, full-width reading interface.
It is deliberately a local presentation layer:
- Reddit loads and renders the page normally.
- Shreddit observes only the DOM already present in the browser tab.
- Shreddit does not call Reddit APIs or internal JSON endpoints.
- Shreddit does not proxy, cache, archive, index, export, or redistribute Reddit content.
- Shreddit does not intercept authentication, cookies, CAPTCHA, telemetry, or network traffic.
- Promoted posts remain visible and clearly labeled.
Unofficial project. Not affiliated with, endorsed by, or sponsored by Reddit, Inc.
Inspired by this post about Reddit's frontend, and the Lobsters discussion around it.
- Removes the left and right rails.
- Forces the central feed and comments to use the full viewport width.
- Removes rounded cards, shadows, large gutters, app prompts, chat buttons, award controls, footer clutter, and recommendation modules.
- Flattens posts into compact, Old Reddit-inspired rows.
- Uses a permanent speedreader layout while the userscript is enabled.
- Defaults to text-only reading while preserving links and metadata.
- Supports compact-media and normal-media modes.
- Dark mode with an old-reddit-night-mode-inspired palette.
- Compacts nested comment threads and limits runaway indentation.
- Install Violentmonkey in your browser.
- Open the Violentmonkey dashboard.
- Choose New.
- Replace the template with
shreddit.user.js. - Save and reload
https://www.reddit.com/.
- Install Tampermonkey in your browser.
- Open the Tampermonkey dashboard.
- Choose Create a new script.
- Replace the template with
shreddit.user.js. - Save and reload Reddit.
Firefox + Tampermonkey works directly on Android. iOS needs Safari plus a
userscript app (Firefox can't run extensions on iOS at all). See
docs/MOBILE.md for both, with screenshots.
| Control | Action |
|---|---|
| Toolbar media button | Cycles text-only → compact media → normal media |
Alt+Shift+M |
Cycles media modes |
| Toolbar dark mode button | Toggles the dark theme |
Alt+Shift+D |
Toggles the dark theme |
Alt+Shift+T |
Hides or restores the Shreddit toolbar |
| Disable userscript | Returns to Reddit's original interface |
Dark mode defaults to your OS's prefers-color-scheme on first run, then remembers your choice.
There is intentionally no “modern view” toggle inside the script. Earlier prototypes included one, but Reddit's client-side navigation could leave the page in an inconsistent state after switching. The userscript itself is now the single on/off boundary.
.
├── shreddit.user.js # Installable userscript
├── README.md # Project overview and setup
├── CHANGELOG.md # Version history
├── CONTRIBUTING.md # Contribution guidance
├── SECURITY.md # Security and privacy reporting
├── package.json # Dependency-free validation commands
├── scripts/check.mjs # Metadata and boundary checks
└── docs/
├── ARCHITECTURE.md # Technical design
├── INSPIRATION.md # Origin and conversation excerpts
├── LEGAL.md # Privacy and non-affiliation statements
├── MOBILE.md # iOS and Android install instructions
├── PRIVACY-BOUNDARIES.md # Explicit non-goals and guardrails
└── TESTING.md # Manual test matrix
Requires Node.js 18 or newer only for local checks. The userscript itself has no package or runtime dependencies.
npm testThe validation command checks:
- JavaScript syntax.
- Required userscript metadata.
- Absence of network-fetching primitives.
- Absence of a modern-view toggle.
- Presence of permanent Shreddit mode and promoted-post labeling.
Shreddit is intended to remain closer to a browser stylesheet than to an alternate Reddit client. See docs/PRIVACY-BOUNDARIES.md before adding features.
Public release 5:00PM EST, 7/31/2026. Reddit's frontend markup changes frequently, so selectors may need maintenance.
Shreddit is a side path from the same season: long hours in browser tabs, needing a calmer Reddit while caregiving and building. Prototypes bounced through ChatGPT and Claude; the “stay on modern Reddit + MutationObserver” call came out of a Grok debugging thread (24 July 2026). It shipped as the first deliberately public open-source utility around the ACL Phase 1 deadline — a small, honest shippable thing beside the heavier private stack.
Not part of clinical care software. Just a reading aid that kept its privacy boundaries tight.
MIT — see LICENSE. See also docs/LEGAL.md for the privacy and non-affiliation statements.
Original prototype built through ChatGPT; this release's full-width media, type scale, banner, and login-nudge-suppression pass done with Claude (Anthropic). The core architecture decision — stay on www.reddit.com/reddit.com rather than redirect to old.reddit.com, and use a MutationObserver to re-apply styling when Reddit's own re-renders strip it — came out of a debugging exchange with Grok (xAI), 2026-07-24: an initial redirect-based script was tried and rejected as the wrong approach, and Grok's follow-up CSS-injection-plus-observer pattern is what the shipped script's @match/document-start/MutationObserver structure is built on. See docs/INSPIRATION.md for the excerpt.
© 2026 M.A.N.A.G.E.R. LLC — prepare for the care when we cannot be there