{"id":22487732,"url":"https://github.com/24eme/histopad","last_synced_at":"2026-02-22T17:35:08.025Z","repository":{"id":176623944,"uuid":"607271812","full_name":"24eme/histopad","owner":"24eme","description":"Mini application web permettant d'historiser des pads (etherpad) et les archiver dans un dépôt git","archived":false,"fork":false,"pushed_at":"2024-10-21T14:16:53.000Z","size":199,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-07-29T12:29:51.566Z","etag":null,"topics":["archive","archiving","etherpad","git","history","pad"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/24eme.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-27T17:01:04.000Z","updated_at":"2024-10-21T14:16:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"f41a158c-8658-4215-a809-2a2f3f84173b","html_url":"https://github.com/24eme/histopad","commit_stats":null,"previous_names":["24eme/histopad"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/24eme/histopad","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/24eme%2Fhistopad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/24eme%2Fhistopad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/24eme%2Fhistopad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/24eme%2Fhistopad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/24eme","download_url":"https://codeload.github.com/24eme/histopad/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/24eme%2Fhistopad/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268448362,"owners_count":24252019,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["archive","archiving","etherpad","git","history","pad"],"created_at":"2024-12-06T17:17:09.652Z","updated_at":"2026-02-22T17:35:07.985Z","avatar_url":"https://github.com/24eme.png","language":"PHP","funding_links":[],"categories":["PHP"],"sub_categories":[],"readme":"# HistoPad\n\nMini application web permettant d'historiser des pads (etherpad) et les archiver dans un dépôt git.\n\n## Aperçu\n\n![capture](https://user-images.githubusercontent.com/6379869/222990784-2c9eb458-663c-4178-9f74-9b93ed4fb0fb.gif)\n\n## License\n\nLogiciel libre sous license AGPL V3\n\n## Installation\n\n### Debian / Ubuntu\n\nInstallation des dépendances :\n\n```\nsudo aptitude install php git\n```\n\nRécupération des sources :\n\n```\ngit clone https://github.com/24eme/histopad.git\n```\n\nPour tester l'application :\n\n```\nphp -S localhost:8000\n```\n\n### Déploiement avec Apache\n\nConfiguration des droits apache sur les dossiers `cache`, `queue` et `pads` :\n\n```\nsudo chown www-data:www-data cache queue pads\n```\n\nConfiguration Apache :\n\n```\nDocumentRoot /path/to/histopad\n\n\u003cDirectory /path/to/histopad\u003e\n    Require all granted\n\u003c/Directory\n```\n\n### Mise à jour des modifications des pads\n\nL'application permet de suivre les modifications de pads.\n\nÀ chaque tentative de mise à jour la date de prochaine tentative de mise à jour est calculé en ajoutant la même durée d'ancienneté de la dernière modifications à la date du jour.\n\nAinsi un pad qui a eu une modification il y a un mois et demi sera à mettre à jour dans un mois et demi.\n\nLa routine `run.php` va permettre d'aller vérifier si des pads sont à mettre à jour.\n\nCette routine est lancé automatiquement à chaque appel de page, donc si la page est consulté souvent les modifications d'un pad seront suivi.\n\nSi l'on souhaite tracker les modifications de façon plus fiable il est possible de faire cette vérification via `crontab`.\n\nVérifie toutes les 5 minutes si des pads sont à mettre à jour via `curl` :\n\n```\n*/5  *  *  *  * curl -s http://url_de_l_appli/run.php\n```\n\n### Automatisation de l'ajout de pads\n\nIl est possible d'ajouter des pads en ligne de commande.\n\nAjout d'un pad unique :\n\n```\ncurl http://url_de_l_appli/archive.php?url=https://url_vers_le_pad_a_archiver/p/code_du_pad\n```\n\nLe script `archive.php` permet aussi d'extraire les urls de pads depuis n'importe quel contenu de texte et tous les ajouter :\n\n```\ncat /tmp/contenu_contenant_des_urls_de_pads | curl http://url_de_l_appli/archive.php --data-binary @-\n```\n\nPar exemple, au 24ème on se sert de notre canal irc pour archiver des pads, en envoyant le `log de la discussion irc` au script `archive.php`, les derniers pads sont archivés automatiquement.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F24eme%2Fhistopad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F24eme%2Fhistopad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F24eme%2Fhistopad/lists"}