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 34814b4661
update changelog
2019-02-24 16:31:57 +01:00
.github update probot stale settings (#44) 2018-06-08 00:47:59 +02:00
assets polish archive size warning 2018-10-06 01:33:35 +02:00
components polish archive size warning 2018-10-06 01:33:35 +02:00
libforget fix: posts not getting refreshed 2019-02-24 16:28:59 +01:00
migrations add exponential backoff 2018-07-06 01:44:30 +02:00
routes raise number of known instances slots to 5 2018-05-08 00:49:23 +02:00
static whoops icon.png stayed in static/ 2017-08-11 21:30:30 +02:00
templates no more florps. that joke is getting dated 2019-02-24 00:40:28 +01:00
test remove x- prefix from headers 2018-11-30 23:04:37 +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 npm version is too old for npm ci 2018-10-06 02:01:35 +02:00
CHANGELOG.markdown update changelog 2019-02-24 16:31:57 +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 travis: update for python 3.7 (#50) 2018-08-11 23:28:25 +02:00
Pipfile.lock update more deps 2019-02-24 00:55:18 +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 remove yarn lock. just use npm 2018-10-06 01:54:36 +02:00
app.py replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00
config.example.py unify redis config (closes #8) 2017-09-07 01:10:02 +02:00
dodo.py doit: js depends on rollup config 2018-10-06 00:55:11 +02: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 add exponential backoff 2018-07-06 01:44:30 +02:00
package-lock.json Bump rollup from 0.66.6 to 1.2.3 2019-02-24 00:08:11 +00:00
package.json Bump rollup from 0.66.6 to 1.2.3 2019-02-24 00:08:11 +00:00
pytest.ini test libbrotli 2017-09-08 23:19:59 +02:00
requirements-dev.txt Bump coverage from 4.5.1 to 4.5.2 2019-02-23 23:41:09 +00:00
requirements.txt Bump raven from 6.9.0 to 6.10.0 2019-02-23 23:16:56 +00:00
rollup.config.js add warning when trying to upload a large twitter archive 2018-10-06 00:57:25 +02: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: posts not getting refreshed 2019-02-24 16:28:59 +01:00
version.py replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00
versioneer.py replace messy version stuff with versioneer 2018-01-31 23:16:54 +01:00

README.markdown

Forget

User count Maintenance status

Build status Test coverage Code quality

Forget is a post deleting service for Twitter and Mastodon. It lives at https://forget.codl.fr.

Running your own

Requirements

  • Postgresql
  • Redis
  • Python 3.6+
  • Yarn or NPM

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 ci

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. This author suggests Caddy.

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.


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. Thanks for reading this readme.