AnarcosyndicalismeBOOK is a specialized CMS (Content Management System) tailored for digital libraries. It allows you to create and manage an online library of activist texts, PDF documents, and EPUB ebooks. https://anarcosyndicalismebookcms.unionlibertaireanarchiste.org/
  • HTML 86.2%
  • Shell 8%
  • JavaScript 2.4%
  • Python 1.7%
  • CSS 1.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-05 21:40:16 +02:00
changelog fix(assets): use absolute paths for CSS, JS and images across all pages and update installer to v1.3.0 2026-09-06 12:06:30 +02:00
changelog_en fix(assets): use absolute paths for CSS, JS and images across all pages and update installer to v1.3.0 2026-09-06 12:06:30 +02:00
changelog_eo fix(assets): use absolute paths for CSS, JS and images across all pages and update installer to v1.3.0 2026-09-06 12:06:30 +02:00
css Serve landing fonts locally 2026-10-05 21:20:22 +02:00
docs Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
docs_en Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
docs_eo Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
fonts Serve landing fonts locally 2026-10-05 21:20:22 +02:00
images Docs: Add missing administration section 2026-03-23 23:03:02 +01:00
index_en Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
index_eo Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
js feat(ui): replace GitLab logos, buttons and API tag calls with Codeberg 2026-08-28 13:34:47 +02:00
pdf build(pdf): régénération des 42 manuels d'utilisation PDF en version v1.3.1 2026-09-19 20:39:29 +02:00
scripts feat(scripts): add automated manual PDF generator with dynamic versioning 2026-09-13 17:07:18 +02:00
vendor/fontawesome refactor(assets): replace jsdelivr CDN with local FontAwesome vendor assets 2026-08-27 15:12:31 +02:00
.dockerignore docs: update Docker and SMTP deployment guidance 2026-08-23 14:03:08 +02:00
.htaccess fix(routing): support clean URLs without .html on all servers and static hosts 2026-08-27 15:08:56 +02:00
_redirects fix(routing): support clean URLs without .html on all servers and static hosts 2026-08-27 15:08:56 +02:00
changelog.html fix(assets): use absolute paths for CSS, JS and images across all pages and update installer to v1.3.0 2026-09-06 12:06:30 +02:00
changelog_en.html fix(assets): use absolute paths for CSS, JS and images across all pages and update installer to v1.3.0 2026-09-06 12:06:30 +02:00
changelog_eo.html fix(assets): use absolute paths for CSS, JS and images across all pages and update installer to v1.3.0 2026-09-06 12:06:30 +02:00
docker-compose.yml Modifier docker-compose.yml 2026-04-28 16:01:37 +00:00
Dockerfile feat(clean-urls): suppression de l'extension .html et configuration Nginx propre 2026-08-25 23:28:12 +02:00
docs.html Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
docs_en.html Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
docs_eo.html Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
index.html Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
index_en.html Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
index_eo.html Remove DigitalOcean deployment option 2026-10-05 21:40:16 +02:00
install.sh Maintenance: align landing Compose documentation 2026-10-05 21:17:58 +02:00
nginx.conf fix(docs): unify language manual download button with cache-busting and update nginx 2026-09-13 17:02:14 +02:00
README.md Maintenance: align landing Compose documentation 2026-10-05 21:17:58 +02:00
README_FR.md Maintenance: align landing Compose documentation 2026-10-05 21:17:58 +02:00

AnarcosyndicalismeBOOK

AnarcosyndicalismeBOOK — Landing Page & Documentation Portal

The official showcase, installation portal, and interactive documentation for the open-source activist digital library CMS.

Version v1.3.1 Responsive Modern Multi-Arch License


Overview

This repository hosts the Landing Page and Official Documentation Portal for AnarcosyndicalismeBOOK. It is designed to introduce the CMS ecosystem, guide self-hosters through multiple deployment methods, and provide comprehensive documentation in French, English, and Esperanto, as well as 42 high-fidelity downloadable PDF manuals.

Key Features:

  • Interactive Installation Terminal: Live command selector with one-click copy for Docker (with integrated CAP captcha), automated Bash installer, native PHP/MariaDB, and YunoHost.
  • Multilingual Documentation: Interactive online documentation available in French (docs.html), English (docs_en.html), and Esperanto (docs_eo.html).
  • 42 High-Fidelity PDF Manuals: A complete, printable A4 instruction booklet generated using WeasyPrint across 42 languages, featuring dynamic language selection and cache-busting download buttons.
  • Synchronized Changelog: Real-time release logs synchronized with official Codeberg releases (changelog.html, changelog_en.html, changelog_eo.html).
  • Privacy-Friendly & Lightweight: Zero tracking cookies, zero external dependencies, fonts served locally or via privacy-focused CDNs, and strict Content Security Policies.
  • Modern Responsive Design: Clean typography with Inter, Outfit, and JetBrains Mono, supporting seamless mobile, tablet, and desktop viewing.

Repository Structure

anarcosyndicalismebook-landing/
├── index.html              # Landing page (French)
├── index_en.html           # Landing page (English)
├── index_eo.html           # Landing page (Esperanto)
├── docs.html               # Full documentation (French)
├── docs_en.html            # Full documentation (English)
├── docs_eo.html            # Full documentation (Esperanto)
├── docs/index.html         # French documentation route mirror
├── docs_en/index.html      # English documentation route mirror
├── docs_eo/index.html      # Esperanto documentation route mirror
├── changelog.html          # Changelog (French)
├── changelog_en.html       # Changelog (English)
├── changelog_eo.html       # Changelog (Esperanto)
├── changelog/index.html    # French changelog route mirror
├── changelog_en/index.html # English changelog route mirror
├── changelog_eo/index.html # Esperanto changelog route mirror
├── install.sh              # Interactive automated installer script
├── Dockerfile              # Production Nginx image with multi-arch support
├── docker-compose.yml      # Docker Compose configuration (Port 8006)
├── nginx.conf              # Nginx server configuration with PDF anti-cache headers
├── pdf/                    # 42 localized user manuals in PDF (WeasyPrint generated)
├── scripts/
│   └── generate_manuals.py # Automation script to compile all 42 PDF manuals
├── css/                    # Stylesheets and layout definitions
├── js/                     # Terminal simulation, scrollspy, and dynamic changelog
└── images/                 # SVG logos, UI screenshots, and visual assets

Deployment & Local Testing

1. Run locally with Docker Compose

To build and run the landing page locally:

docker compose up -d --build

Once started, the landing page is accessible at:

http://localhost:8006

The Docker examples follow the official production Compose file: permissions are prepared at startup, then docker/create-admin.php is run once after MariaDB is ready. The script detects an existing administrator and preserves its password. Self-signed certificate exceptions remain disabled by default (SMTP_ALLOW_SELF_SIGNED=false and CALIBRE_ALLOW_SELF_SIGNED=false). The documentation is accessible at:

  • French: http://localhost:8006/docs.html (or http://localhost:8006/docs/)
  • English: http://localhost:8006/docs_en.html (or http://localhost:8006/docs_en/)
  • Esperanto: http://localhost:8006/docs_eo.html (or http://localhost:8006/docs_eo/)

2. Multi-Architecture Docker Build

The production Docker image is built for linux/amd64, linux/arm64, and linux/arm/v7 and pushed to Docker Hub:

docker buildx build \
  --platform linux/amd64,linux/arm64,linux/arm/v7 \
  -f Dockerfile \
  -t liberchat/anarcosyndicalismebook-landing:latest \
  -t liberchat/anarcosyndicalismebook-landing:1.3.1 \
  --push .

3. Regenerating the 42 PDF Manuals

The user manuals are generated directly from the CMS HTML help files using WeasyPrint:

python3 scripts/generate_manuals.py --version 1.3.1

This updates all 42 files inside pdf/manuel_<lang>.pdf with localized covers, tables of contents, and CSS page counters.


Server Configuration

Nginx Anti-Cache Configuration

PDF files are served with headers that prevent browser caching issues when a new version is released:

location ~* \.pdf$ {
    expires -1;
    add_header Cache-Control "no-cache, no-store, must-revalidate";
    add_header Pragma "no-cache";
}

License & Attribution

  • License: Released under the MIT License.
  • Mission: Free knowledge for all. Anti-capitalist, anti-authoritarian digital library infrastructure.