Skip to the content.

Project Overview & Architecture

🏠 Home · Overview · Data Structure · Entity Matching · Consuming the Data · Automation


Who is this page for? Anyone wanting to understand the purpose of this project, how weekly news roundups become structured data, and how the system operates without needing complicated artificial intelligence. Non-developers can read the summary and diagram below to see how it all fits together.


What is this project?

Every week, Public Libraries News (curated by Ian Anstice in partnership with The Library Campaign) publishes a comprehensive roundup of what is happening to public libraries across the United Kingdom and internationally.

This repository automatically reads each new post on Sunday evening, splits the news into individual, searchable stories, and links each story to:

All the collected data is stored as plain, open data files directly inside this GitHub repository. Anyone can use this data for free to build maps, dashboards, research reports, or search tools.


How It Works in Plain English

flowchart LR
    A["Weekly PLN Post<br/>(Published on Sunday)"] --> B["Automatic Reader<br/>(GitHub Action)"]
    B --> C["Split into Sections<br/>(Editorial, Changes, Local, International)"]
    C --> D["Match Places & Libraries<br/>(Using open council & library lists)"]
    D --> E["Save Open Data Files<br/>(Organized by year in this repo)"]
    E --> F["Ready for Websites, Maps & Dashboards"]
  1. Scheduled Check: Every Sunday night at 9:00 PM (UK time), an automated process runs on GitHub.
  2. Checking for New News: It asks the Public Libraries News website if a new weekly post has been published.
    • If there are no new posts, it quietly stops without changing anything.
    • If a new post is found, it reads the content.
  3. Organizing the Stories: It reads the editorial notes, and then takes each item in sections like Changes, Local news by authority, and International news.
  4. Linking Names to Real Places:
    • It recognizes the council name (e.g. “Cheshire West” is linked to Cheshire West and Chester and assigned official government code E06000050).
    • It scans the text to see if individual library buildings are mentioned (e.g. “Harborne Library”).
    • It preserves all links to original sources, council minutes, and newspaper articles.
  5. Categorizing the Topic: It checks what the story is about (e.g. a funding cut, a new library opening, or a volunteer campaign).
  6. Saving Open Files: The structured files are committed right into the data/ folder in this repository, ready for anyone to download or connect to.

Why Pure Data (No AI Needed)?

We deliberately designed this system to run purely from reliable code and open reference datasets, without needing an artificial intelligence (AI) model:


Where to Go Next


Content License & Attribution

All news content extracted from Public Libraries News is made available under the Creative Commons Attribution (CC BY 4.0) license, respecting the work of Ian Anstice and The Library Campaign.

When using this data in your own applications, please include attribution:

Source: Public Libraries News (https://www.publiclibrariesnews.com/), curated by Ian Anstice / The Library Campaign.