Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Keep or Sweep

Randomly declutter your digital life!

Tech companies help you amass data – we help you clean it by having fun while getting things done! 😊 You will see one random element of your data at a time and you decide whether to βœ…keep or ❌sweep it.


Download for ⊞Windows, 🍏macOS & 🐧Linux. And if you like it, come contribute!

Also available as ☁️Nextcloud app – contributions welcome too! 😍


The plan is to make this extendable so you can randomly clean your:

  • πŸ“ Files, pictures, notes, … β†’ available as Nextcloud app and desktop app, see links above
  • 🐦 Twitter: Tweets, favorites, follows, direct messages, authorized apps, … β†’ prototype now available!
  • 🌐 browser: tabs, bookmarks, extensions, Pocket, … β†’ prototype for bookmarks available as Keep or Delete Bookmarks extension for Firefox (source code)
  • πŸ‘₯ Facebook: posts, friends, events, … β†’ sadly Facebook does not allow deletion via API, but we have an early prototype at
  • 🐘 Mastodon: has some API libraries, so could be possible
  • πŸ’Œ Mails
  • πŸ‘₯ Contacts
  • πŸ“† Events
  • πŸ“± Apps: uninstall, or mute notifications, remove startup programs
  • πŸ’¬ text messages, Signal
  • πŸ—ΊοΈ map markers / favorites
  • πŸ™πŸ± GitHub: notifications, stars, repos, watched repos, follows, authorized apps, …
  • πŸ“Ό Youtube: subscriptions, favorites
  • πŸ’¨ Steam: games, wishlist, inventory, friends
  • 🀝 Meetup: groups, messages
  • πŸ›‚ expired Passbook passes
  • πŸŽ‰ … anything you can imagine! You could add your own module :)
  • Keep or Sweep x Wahl-o-mat: Show statements from political parties. Keep = Agree, Sweep = Disagree. Could use data from Qual-o-mat (Germany only).
  • πŸ’Έ Open Collective donations: Show a random (underfunded) collective, and "Keep" will donate 5 € to it! Ref their GraphQL API
  • 🍎 When everything is connected through the magical Internet of Things, stuff and food you have which is not being used could automatically gift itself away.

Build a button

We have a tutorial on how to build a πŸ”΄ big button for Keep or Sweep! :)

Related & inspiration

  • Web 2.0 Suicide Machine: Helps users tired of MySpace, LinkedIn and Twitter, to "commit suicide in social networks", by automatically "removing their private content and friend relationships" (but without deleting or deactivating their accounts).
  • Triage: for iOS and only for unread mails, not random
  • Cleanfox: for mail deletion and unsubscribing – their new interface is also based on cards & swiping
  • Cinder: for contact deletion, interface also based on cards & swiping
  • Gemini Photos: for decluttering photos, has a mode with swiping
  • Plain: prototype for macOS and Gmail only, not random
  • Data Detox: take control of your digital life, made by Mozilla and Tactical Tech
  • unsubscribing from newsletters, not random
  •,, AccountKiller: deleting accounts, not random
  • Mailstrom: helps manage your email with lots of filters, no randomness
  • Manageflitter: helps unfollowing people on Twitter, with lots of filters but no randomness
  • Octobox: helps manage GitHub issues with lots of filters, no randomness
  • Random Decluttering Generator: for physical things
  • Go to random tab: browser extension for Firefox (also works on Firefox mobile)
  • Random Unusual Wikipedia new tab: gives you a random (or random from a set) Wikipedia page on opening a new tab – great for learning something instead when you wanted to open Reddit or the like ;)
  • randomoji: πŸŒ™ 🏨 πŸ‡ ▢️ πŸ˜•
  • Random Bookmark: load random bookmark (not compatible with latest Firefox, it seems)
  • random-tweet: command line script for returning random tweet based on an input keyword
  • Randomly picking a GitHub issue: command line snippet for issues assigned to you
  • Solve this random GitHub issue: shows you a completely random GitHub issue, not even related to you
  • Very basic prototype shell script at (On macOS you need to install coreutils and then use gshuf)
  • And the aliases with which it all started (put them in your .bashrc if you want to try):
# Show a random file, or some biggest, or some oldest
alias random='find /home/jan/Nextcloud/ -type f -print0 | shuf -zn1'
alias biggest='find /home/jan/Nextcloud/ -type f -exec du -Sh {} + | sort -rh | head -n 10'
alias oldest="find /home/jan/Nextcloud/ -type f -printf '%T+ %p\n' | sort | head -n 20"

Further reading


πŸ’»πŸ”€πŸ—‘οΈ Randomly declutter your digital life!








No releases published


No packages published