Skip to main content

A new addon for Plone

Project description

rer.linkmap

PyPI Python Tests License: GPL v2

Plone add-on to manage and expose the "Amministrazione Trasparente" link map required by the AGID/ANAC transparency specification.

Links are configured from a control panel and exposed through dedicated Plone views in JSON and XML format.

Reference specification: https://guida-servizi.anticorruzione.it/it/help/trasparenza/amministrazione-trasparente/#la-mappa-dei-link-della-sezione-at

Features

  • Control panel for configuring all transparency-map URLs.
  • Dedicated outputs at portal root:
    • at_map.json
    • at_map.xml
  • Independent flags to enable/disable JSON and XML exposure.
  • REST API control panel integration (linkmap-settings).

Requirements

  • Plone 6 (tested with Plone 6.2)
  • Python 3.8 - 3.13

Installation

Add rer.linkmap to your Plone environment and install it from the Add-ons control panel.

If you are using a classic buildout-based setup, add it to eggs:

[buildout]
eggs =
		rer.linkmap

Development Setup

This project includes a Makefile workflow based on uv.

make install      # create venv, install deps, generate instance config
make start        # start Plone on localhost:8080
make create-site  # create a fresh Plone site

Useful commands:

make test
make test-coverage
make lint
make format
make i18n

Configuration

After installation, configure the add-on in:

  • Site Setup -> Link map settings (linkmap-settings)

Main options:

  • expose_json: enable/disable @@at_map.json
  • expose_xml: enable/disable @@at_map.xml
  • data_ultima_modifica: date string in GG/MM/AAAA
  • one URL field for each transparency section key

If a format is disabled, the corresponding view returns 404 Not Found.

Output Endpoints

Endpoints are available only on the portal root context:

  • /at_map.json
  • /at_map.xml

JSON example

{
	"at_art2_bis_c1": {
		"amministrazione_trasparente": "https://www.example.org/amministrazione-trasparente",
		"disposizioni_generali": "https://www.example.org/disposizioni-generali"
	},
	"data_ultima_modifica": "17/06/2026"
}

XML example

<?xml version="1.0" encoding="utf-8"?>
<amministrazione_trasparente xmlns="https://guida-servizi.anticorruzione.it/trasparenza">
	<data_ultima_modifica>18/06/2026</data_ultima_modifica>
	<map>
		<at_art2_bis_c1>
			<amministrazione_trasparente>https://www.example.org/at</amministrazione_trasparente>
			<accesso_civico>https://www.example.org/accesso-civico</accesso_civico>
		</at_art2_bis_c1>
	</map>
</amministrazione_trasparente>

REST API Integration

The add-on registers a restapi control panel adapter named linkmap-settings, based on the same schema used by the classic control panel.

Testing

Run tests with:

make test

The suite verifies:

  • install/uninstall profile behavior
  • control panel registration
  • JSON/XML output shape and namespace
  • root-only access to views
  • enable/disable behavior for exposed formats

License

This project is licensed under GPL-2.0-only.

Credits

Developed with the support of Regione Emilia Romagna

Regione Emilia Romagna supports the PloneGov initiative.

Authors

This product was developed by RedTurtle Technology team.

Generated using Cookieplone and cookieplone-templates.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rer_linkmap-1.0.4.tar.gz (74.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rer_linkmap-1.0.4-py3-none-any.whl (34.2 kB view details)

Uploaded Python 3

File details

Details for the file rer_linkmap-1.0.4.tar.gz.

File metadata

  • Download URL: rer_linkmap-1.0.4.tar.gz
  • Upload date:
  • Size: 74.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for rer_linkmap-1.0.4.tar.gz
Algorithm Hash digest
SHA256 3aae4899ce1c1906bb759a25e1b1abe48a4171dd2a588eef0d18d2be5c534eeb
MD5 b217dfc143ec8034c7de14a47b620357
BLAKE2b-256 8cddfb0835a269806d15f951d1279a7f68c05659ccd422c29691f04a78f055e6

See more details on using hashes here.

File details

Details for the file rer_linkmap-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: rer_linkmap-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 34.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for rer_linkmap-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f1aba8ad255a1a33433e0350fd083997493bb52687ad22f6b94bd5f56b251ae4
MD5 21eadad8b06f97e76f84cc4f38158a63
BLAKE2b-256 69d739097529bd39744244d8b5bae5aeef06e61807ace0a765d45fe931d718e9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page