Un pastebin pour l'AFPy

Les mises à jour du jour :

  • Le Markdown est rendu en HTML.
  • Il est possible de choisir l’URL de son envoi : il suffit de faire un PUT sur l’URL plutôt qu’un POST a la racine.
  • Il est possible de modifier un envoi, via un PUT et un secret prouvant que vous en êtes l’auteur.
  • La page d’accueil est maintenant un simple paste, en Markdown, que je maintiens a coup de curl, la boucle est bouclée et je ne rédige plus de HTML.
  • Il est possible de lister tous les pastes qui partagent un même secret.
  • J’ai mis en bas de la home une fonction paf un peu plus complexe utilisant un secret et permettant de lister les pastes. Mais elle n’est pas encore capable de choisir l’URL et donc pas encore capable de mettre à jour un envoi.

Tout est documenté : https://p.afpy.org

Oui vous pouvez donc carrément héberger votre blog sur ce pastebin, il suffit de le rédiger dans un dossier, et d’y aller a grand coup de paf monblog/*.md.

Aller un exemple avant d’aller manger :

$ paf --list
| filename              |   size | URL                                           | paste_time                | access_time               |   viewcount |
|-----------------------|--------|-----------------------------------------------|---------------------------|---------------------------|-------------|
|                       |   4911 | https://p.afpy.org/                           | 2023-04-25T16:03:59+00:00 | 2023-04-25T16:43:33+00:00 |           6 |
|                       |    184 | https://p.afpy.org/aAkF                       | 2023-04-25T16:38:00+00:00 | 2023-04-25T16:38:03+00:00 |           1 |
| admin.py              |    568 | https://p.afpy.org/fAqR/admin.py              | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:39:36+00:00 |           0 |
| context_processors.py |    296 | https://p.afpy.org/fAqR/context_processors.py | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:39:36+00:00 |           0 |
| __init__.py           |      0 | https://p.afpy.org/fAqR/__init__.py           | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:39:36+00:00 |           0 |
| models.py             |   2959 | https://p.afpy.org/fAqR/models.py             | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:40:45+00:00 |           2 |
| urls.py               |    410 | https://p.afpy.org/fAqR/urls.py               | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:39:36+00:00 |           0 |
| utils.py              |   2887 | https://p.afpy.org/fAqR/utils.py              | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:40:48+00:00 |           1 |
| views.py              |   5193 | https://p.afpy.org/fAqR/views.py              | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:40:53+00:00 |           1 |
|                       |    267 | https://p.afpy.org/nnLR                       | 2023-04-25T16:39:36+00:00 | 2023-04-25T16:40:40+00:00 |           2 |