Skip to content

Navigation Menu

Sign in
Sign up

ArchiveHeritageGroup

Archive & Heritage Group (AHG)

Archive & Heritage Group (AHG) builds production-grade extensions, integration tooling, and automation around Access to Memory (AtoM) to support archival, records management, and GLAM workflows.

Our engineering model is intentionally modular:

  • atom-framework is the stable base and changes rarely.
  • Plugins deliver almost all functional capability.
  • Shared SDKs prevent duplicated client logic across UI modules and automation tooling.
  • atom-extensions-catalog is the canonical entry point for documentation and installation patterns.

Start here

  1. atom-extensions-catalog Documentation, catalog and manifest, install and upgrade patterns, compatibility guidance.

  2. atom-framework Stable base platform: extension lifecycle, migrations runner, DB bootstrap, Qubit compatibility shims, contracts and utilities.

  3. atom-ahg-plugins AHG-maintained plugins: rights, privacy, provenance, Spectrum and loans, preservation and condition, IIIF and 3D, research and search, engagement modules.

  4. Product Roadmap What's completed, in progress, planned, and future — with competitive context.


Architecture overview

Core principles

  • The framework provides infrastructure and contracts.
  • Plugins implement domain features, workflows, and UI.
  • SDKs provide shared API clients and UI building blocks.
  • The catalog documents what is supported and how to deploy it.

Full stack diagram

%%{init: {"flowchart":{"nodeSpacing":55,"rankSpacing":65}}}%%
flowchart TB
 FW[atom-framework stable base]
 subgraph SDK["Shared SDKs"]
 JS[atom-client-js]
 PY[atom-ahg-python]
 end
 subgraph GOV["Catalog"]
 CAT[atom-extensions-catalog]
 end
 subgraph UI["UI and Presentation"]
 THEME[ahgThemeB5Plugin]
 DISP[ahgDisplayPlugin]
 GALL[ahgGalleryPlugin]
 IIIF[ahgIiifCollectionPlugin]
 M3D[ahg3DModelPlugin]
 end
 subgraph SEC["Security Rights Privacy Access"]
 CLR[ahgSecurityClearancePlugin]
 RGT[ahgRightsPlugin]
 XRGT[ahgExtendedRightsPlugin]
 PRV[ahgPrivacyPlugin]
 ARQ[ahgAccessRequestPlugin]
 PUB[ahgRequestToPublishPlugin]
 end
 subgraph GOV2["Provenance Audit Governance"]
 PROV[ahgProvenancePlugin]
 AUD[ahgAuditTrailPlugin]
 DON[ahgDonorAgreementPlugin]
 end
 subgraph SECTOR["Sector Workflows"]
 SPEC[ahgSpectrumPlugin]
 LOAN[ahgLoanPlugin]
 MUS[ahgMuseumPlugin]
 LIB[ahgLibraryPlugin]
 ACC[ahgHeritageAccountingPlugin]
 end
 subgraph PRES["Preservation and Digital Assets"]
 PPR[ahgPreservationPlugin]
 COND[ahgConditionPlugin]
 DAM[ahgDAMPlugin]
 end
 subgraph AI["AI Search Research Reporting"]
 NER[ahgAIPlugin]
 DISC[ahgDiscoveryPlugin]
 META[ahgMetadataExtractionPlugin]
 SEM[ahgSemanticSearchPlugin]
 RSR[ahgResearchPlugin]
 RIC[ahgRicExplorerPlugin]
 REP[ahgReportBuilderPlugin]
 end
 subgraph ENG["User Engagement"]
 FAV[ahgFavoritesPlugin]
 FDB[ahgFeedbackPlugin]
 CART[ahgCartPlugin]
 end
 subgraph OPS["Operations Integration Migration"]
 API[ahgAPIPlugin]
 GQL[ahgGraphQLPlugin]
 BAK[ahgBackupPlugin]
 DMIG[ahgDataMigrationPlugin]
 MIG[ahgMigrationPlugin]
 VEND[ahgVendorPlugin]
 end
 FW --> UI
 FW --> SEC
 FW --> GOV2
 FW --> SECTOR
 FW --> PRES
 FW --> AI
 FW --> ENG
 FW --> OPS
 CAT --> FW
 JS --> UI
 PY --> OPS
Loading

Repository map

atom-extensions-catalog — Canonical documentation and recommended deployment patterns. Catalog and manifest approach for consistent installs and upgrades. Governance entry point for community contributions (plugin registration).

atom-framework — Stable base platform intended to change rarely: DB bootstrap and connection ownership, extension lifecycle management (install, enable, disable, dependencies, core and locked), generic migrations runner, Qubit compatibility layer and shims, shared contracts and utilities.

atom-ahg-plugins — AHG-maintained plugins providing feature modules: Rights, privacy, and security clearance. Provenance, audit trail, and governance workflows. Spectrum procedures and loan workflows. Preservation, condition, DAM, and display. IIIF and 3D support. AI enrichment, semantic search, research tooling. User engagement modules.

atom-client-js — Shared TypeScript library: API client patterns for UI modules, reusable UI widgets and components, consistent handling of authentication, pagination, retries, and error reporting.

atom-ahg-python — Shared Python library: API client patterns for automation and integration tooling, consistent auth, pagination, batching, retries. Useful for ETL, migration tooling, processing pipelines, and scheduled jobs.


Compatibility targets

  • AtoM: 2.10.x
  • PHP: 8.3
  • Database: MySQL 8.x
  • Web server: Nginx with PHP-FPM
  • Search: Elasticsearch 7.x
  • Vector store: Qdrant (optional — for semantic search)
  • AI backend: Ollama / spaCy / Argos Translate (optional — for AI features)

Plugin map by capability

%%{init: {"flowchart":{"nodeSpacing":60,"rankSpacing":70}}}%%
flowchart TB
 subgraph L1["Lane 1 Clients"]
 USERS[Users]
 BROWSER[Browser UI]
 AUTO[Automation and Tools]
 end
 subgraph L2["Lane 2 SDKs"]
 JS[atom-client-js]
 PY[atom-ahg-python]
 end
 subgraph L3["Lane 3 AtoM runtime"]
 PLUGINS[AHG plugins]
 ATOM[AtoM 2.10.x runtime]
 end
 subgraph L4["Lane 4 Framework base"]
 FW[atom-framework]
 EXT[Extension lifecycle]
 MIG[Migrations runner]
 DBB[Database bootstrap]
 COMP[Compatibility shims]
 CTR[Contracts]
 UTIL[Shared utilities]
 end
 subgraph L5["Lane 5 Data stores"]
 MYSQL[(MySQL)]
 ES[(Elasticsearch)]
 QD[(Qdrant)]
 FS[(Storage)]
 end
 subgraph L6["Lane 6 Catalog and governance"]
 CAT[atom-extensions-catalog]
 end
 USERS --> BROWSER --> PLUGINS --> ATOM
 AUTO --> PY
 BROWSER --> JS
 PLUGINS --> FW
 FW --> EXT
 FW --> MIG
 FW --> DBB
 FW --> COMP
 FW --> CTR
 FW --> UTIL
 ATOM --> MYSQL
 ATOM --> ES
 PLUGINS --> QD
 PLUGINS --> FS
 UTIL --> FS
 DBB --> MYSQL
 CAT --> EXT
 JS --> PLUGINS
 PY --> FW
Loading

Contribution model

What to contribute — New features should be delivered as plugins. The framework is treated as stable base infrastructure and changes are conservative.

Naming conventions — Prefix ahg is reserved for AHG-maintained plugins. Third parties must use a vendor prefix: <vendorPrefix><Feature>Plugin. machine_name must match folder name and configuration class prefix. extension.json is required and authoritative for version and dependencies.

Security — For security issues, use GitHub Security Advisories where enabled. For operational issues, open an issue in the relevant repository with environment details and reproduction steps.


Contact: The Archive and Heritage Group License: GPL-3.0

Popular repositories Loading

  1. heratio heratio Public

    Open-source (AGPL-3.0) GLAM platform on Laravel 12: archival description, museum collections management, digital asset management, and records management in one self-hostable app. Records in Contex...

    PHP 4

  2. atom-extensions-catalog atom-extensions-catalog Public

    Curated extensions catalog for Access to Memory 2.10

    Shell 3

  3. atom-framework atom-framework Public

    Laravel Query Builder integration for AtoM 2.10 with Extension Management System

    PHP 1

  4. atom-ahg-plugins atom-ahg-plugins Public

    Extensions and themes for Access to Memory (AtoM) 2.10

    PHP 1

  5. atom-ahg-python atom-ahg-python Public

    Python SDK for AtoM API - The Archive and Heritage Group

    Python

  6. atom-client-js atom-client-js Public

    TypeScript/JavaScript SDK for AtoM API - The Archive and Heritage Group

    TypeScript

Repositories

Loading
Type
Select type
Language
Select language
Sort
Select order
Showing 9 of 9 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading...

Most used topics

Loading...

AltStyle によって変換されたページ (->オリジナル) /