Servizio per cancellare i messaggi quando superano una certa età. Limita l'account ad un numero massimo di post, cancellando quelli più vecchi. Conserva i vecchi post che contano con un favorito. Imposta e dimentica https://mastodon.uno
Go to file
codl bbbb2470ed add instance hidelist 2022-03-04 13:12:35 +01:00
.github mellow dependabot out (daily → monthly) 2022-03-01 01:13:25 +01:00
assets fix default misskey known instances 2022-02-26 23:14:40 +01:00
components disable archives 2019-09-13 03:33:39 +02:00
libforget add permission to read reactions 2022-03-02 13:30:40 +01:00
migrations fix migration 2022-02-28 22:39:10 +01:00
routes add instance hidelist 2022-03-04 13:12:35 +01:00
static whoops icon.png stayed in static/ 2017-08-11 21:30:30 +02:00
templates fix logged in template 2022-03-02 20:47:47 +01:00
test remove known instances 2019-03-15 17:17:00 +01:00
tools fix post-receive hook again. dumbass 2018-02-03 17:47:44 +01:00
.codacy.yml code quality fixes 2018-08-14 03:51:14 +02:00
.codecov.yml set up .codecov.yml to ignore version.py and also shut up in PRs 2018-04-25 09:05:08 +02:00
.coveragerc test libbrotli 2017-09-08 23:19:59 +02:00
.env store fav/reblog count. first step towards #7 2017-12-27 20:49:19 +01:00
.eslintrc.yml eslint 2017-08-29 18:38:54 +02:00
.gitattributes replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00
.gitignore add .pytest_cache to gitignore 2018-05-07 23:50:09 +02:00
.travis.yml travis: update python matrix to include 3.9 2021-03-08 23:43:24 +01:00
CHANGELOG.markdown release v2.1.0 2022-03-04 12:34:17 +01:00
LICENSE add license 2017-08-03 21:52:17 +02:00
MANIFEST.in replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00
Pipfile fix deps 2022-03-01 00:59:55 +01:00
Pipfile.lock fix deps 2022-03-01 00:59:55 +01:00
Procfile set celery to autoscale from 8 to 64 processes 2018-01-19 03:30:38 +01:00
Procfile.dev Update requirements (#35) 2018-05-07 21:37:27 +02:00
README.markdown fix promo image in readme 2022-03-01 01:12:06 +01:00
app.py add proxyfix 2020-11-18 01:23:58 +01:00
config.example.py add instance hidelist 2022-03-04 13:12:35 +01:00
dodo.py add misskey icon 2021-11-09 09:21:32 +01:00
forget.example.service add example systemd service file 2017-08-03 22:48:45 +02:00
forget.py split off routes.py 2017-09-16 12:22:17 +02:00
model.py remove fk from fetch_current_batch_end_id 2022-02-27 13:12:47 +01:00
package-lock.json deps update 2022-03-01 00:16:24 +01:00
package.json Bump rollup from 2.41.5 to 2.42.4 2021-03-25 13:19:48 +01:00
pytest.ini test libbrotli 2017-09-08 23:19:59 +02:00
requirements-dev.txt fix deps 2022-03-01 00:59:55 +01:00
requirements.txt fix deps 2022-03-01 00:59:55 +01:00
rollup.config.js fix svelte compile 2021-03-09 00:08:45 +01:00
setup.cfg replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00
setup.py replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00
tasks.py fix deps 2022-03-01 00:59:55 +01:00
version.py update in-tree versioneer 2021-03-10 05:44:47 +01:00
versioneer.py update in-tree versioneer 2021-03-10 05:44:47 +01:00

README.markdown

Forget

User count Maintenance status

Build status Test coverage

Forget is a post deleting service for Twitter, Mastodon, and Misskey.

You can run a copy of it on your server, or use the server run by the maintainer at https://forget.codl.fr/

Features

  • Delete your posts when they cross an age threshold.
  • Or keep your post count in check, deleting old posts when you go over.
  • Preserve old posts that matter by giving them a favourite or a reaction.
  • Set it and forget it. Forget works continuously in the background.

Non-features

Forget is not a one-time purging tool. It is designed to prune your account continuously, not quickly. If you need a lot of posts gone fast, you may want to look for another more-suited tool.

Running your own

Requirements

  • Postgresql
  • Redis
  • Python 3.6+
  • Node.js 10+

Set up venv

Setting up a venv will isolate Forget from your system's libraries and allow you to install dependencies locally as a normal user. It's not necessary but it is recommended!

$ python -m venv venv
$ source venv/bin/activate

If you're using zsh or fish as a shell, substitute venv/bin/activate with venv/bin/activate.zsh or venv/bin/activate.fish, respectively.

You will need to "activate" the venv in every new terminal before you can use pip or any python tools included in dependencies (honcho, flask...)

Download and install dependencies

$ pip install -r requirements.txt
$ npm install

Wow!! Exciting

Create and complete config file

Gotta set up those, paths, and stuff.

$ cp config.example.py config.py
$ $EDITOR config.py

Set up database schema

If you haven't started postgresql yet now would be a great time to do that.

$ createdb forget # if you havent created the DB yet
$ env FLASK_APP=forget.py flask db upgrade

Build static assets

Gonna do it...!

$ doit

Done did it.

Running

The included Procfile will run the app server and the background worker. honcho, a Procfile runner, is included as a dependency:

$ honcho start

The application server will listen on http://127.0.0.1:42157. You'll want to use your favourite web server to proxy traffic to it.

Development

For development, you may want to use Procfile.dev, which starts flask in debug mode and rebuilds the static assets automatically when they change

$ honcho -f Procfile.dev start

Or you could just look at Procfile.dev and run those things manually. It's up to you.

You can run the (currently very incomplete) test suite by running pytest. You'll need redis installed on your development machine, a temporary redis server will be started and shut down automatically by the test suite.

Contact

If you're having trouble with Forget, or if you're not having trouble but you just want to tell me you like it, you can drop me a note at @codl@chitter.xyz or codl@codl.fr.

Greetz

Thank you bea, for making ephemeral, inspiring me to make limiter, then this, in an attempt to bring ephemeral with me everywhere.

Thank you to the kind folks who have emailed me to tell me Forget has made their time on social media less stressful. 🌻