Skip to content

Repository files navigation

πŸ“š Digitized Medieval Manuscripts App

A curated, interactive directory of digitized medieval manuscript libraries worldwide with support for standardized image formats and open access resources.

License: MIT GitHub Pages Build Status JSON Schema Validation

What you can do

Use DMMapp (Digitized Medieval Manuscripts Application) to discover and access digitized medieval manuscript collections from around the world. Instead of visiting dozens of institutional websites, you can search a single directory that gives you:

  • πŸ” Advanced filtering and search capabilities
  • 🌍 Global coverage with location-based discovery
  • πŸ“‹ Real-time statistics and insights
  • β™Ώ Full accessibility support
  • πŸš€ Lightning-fast performance with no external dependencies

Features

Interactive dashboard

  • Real-time search: Filter libraries instantly by name or city
  • Advanced filters:
    • Filter by nation or country
    • Filter by standardized image format support (lets you access images the same way across different libraries)
    • Filter by open license (find freely reusable materials)
  • Live statistics:
    • Total libraries in the database
    • Number of participating nations
    • Collections with standardized image format support
  • Responsive design: Works on desktop, tablet, and mobile devices

Detailed library information

Each library entry includes:

  • Library name and location: Official institution name, city, and country
  • Website link: Direct access to the digitized collection
  • Standardized image format support: Badge indicating compatibility (lets you view and compare manuscripts consistently across libraries)
  • Open license: Badge for freely reusable collections
  • Manuscript quantity: Approximate number of digitized manuscripts (Few, Dozens, Hundreds, Thousands)

Comprehensive documentation

  • Getting started guide
  • About the project and technology stack
  • Contributing guidelines
  • Information about standardized image formats

Quick start

For researchers

Visit the live dashboard to browse and search: πŸ‘‰ Digitized Medieval Manuscripts App

No installation required. Everything runs in your browser.

For contributors

Clone the repository and set up your local environment:

git clone https://github.com/SexyCodicology/Digitized-Medieval-Manuscripts-app.git
cd Digitized-Medieval-Manuscripts-app

The dashboard is a MkDocs Material page, so you preview it the same way as the rest of the documentation. Install the dependencies from requirements.txt, then start the MkDocs development server:

pip install -r requirements.txt
mkdocs serve

Open http://localhost:8000 in your browser to see the full dashboard.

Project structure

Digitized-Medieval-Manuscripts-app/
β”œβ”€β”€ mkdocs.yml              # Documentation and dashboard build settings
β”œβ”€β”€ requirements.txt        # Python dependencies for MkDocs
β”œβ”€β”€ schema.json             # Data format definition
β”œβ”€β”€ overrides/
β”‚   └── home.html           # Dashboard template (extends Material's main.html)
β”‚
β”œβ”€β”€ docs/                   # Documentation and dashboard source
β”‚   β”œβ”€β”€ index.md            # Dashboard home page (uses the home.html template)
β”‚   β”œβ”€β”€ about.md            # About the project
β”‚   β”œβ”€β”€ getting-started.md  # How to use the dashboard
β”‚   β”œβ”€β”€ schema.md            # Data structure guide
β”‚   β”œβ”€β”€ update-data.md       # How to add or edit library entries
β”‚   β”œβ”€β”€ contributing.md      # How to contribute code or docs
β”‚   β”œβ”€β”€ setup.md             # Local development setup
β”‚   └── assets/
β”‚       β”œβ”€β”€ dashboard.js     # Dashboard interactivity
β”‚       β”œβ”€β”€ dashboard.css    # Dashboard styling
β”‚       └── data.json        # Library database
β”‚
β”œβ”€β”€ README.md               # This file
β”œβ”€β”€ CONTRIBUTING.md         # Contribution guide
└── LICENSE                 # MIT License

Technology stack

Frontend dashboard

  • HTML5: Semantic markup
  • CSS3: Custom Material Design styling
  • Vanilla JavaScript: No frameworks, pure web standards
  • Bootstrap Icons: Accessible icons
  • Google Fonts (Roboto): Professional typography

Documentation

  • MkDocs: Static site generator
  • Material for MkDocs: Responsive theme

Data and validation

  • Data format: Simple, portable database (uses a text-based format for easy editing)
  • Data validation: Automated checks to ensure data quality
  • GitHub Actions: Automatic testing and deployment

Hosting and deployment

  • GitHub Pages: Free, reliable hosting
  • GitHub Actions: Automatic updates when you make changes

Data schema

Each library entry in docs/assets/data.json follows this structure:

{
  "id": "Unique record identifier",
  "library": "Official institution name",
  "nation": "Country name",
  "city": "City name",
  "website": "URL to digitized collection",
  "copyright": "Copyright or license information",
  "quantity": "Few | Dozens | Hundreds | Thousands | Unknown",
  "iiif": "Supports standardized image format",
  "is_free_cultural_works_license": "Has open license",
  "aggregators": "Aggregating projects the library is discoverable through, as a list of { name, url }"
}

See schema.json for the complete definition.

Contributing

You can help in several ways:

Add libraries

  1. Search first: Make sure the library isn't already listed in docs/assets/data.json
  2. Edit the file: Add your entry following the data format
  3. Submit a pull request: Send it to the master branch

See detailed contributing guide β†’

Report issues

Found an error or have a suggestion? Open an issue

Improve the codebase

  • Enhance the dashboard
  • Improve documentation
  • Suggest features
  • Fix bugs

About standardized image formats

Libraries that support standardized image formats (like IIIF) let you:

  • Search across multiple collections simultaneously
  • View and compare manuscripts side-by-side
  • Zoom, rotate, and annotate images
  • Reuse collections freely in your own projects

Design principles

  1. Simplicity: Clean, maintainable code and design
  2. Performance: Fast loading with minimal dependencies
  3. Accessibility: Works for all users, including those using assistive technology
  4. Consistency: Unified design across all components
  5. Open source: Transparent development, community-driven

License

This project is licensed under the MIT License. See LICENSE for details.

You're free to use, modify, and distribute this project with proper attribution.

Support and questions

Related resources

Project statistics

  • Total libraries: Check the dashboard for current count
  • Countries represented: Explore the directory to discover
  • Collections with standardized image format support: Use the filter to see available options
  • Last updated: Check the GitHub commit history

Roadmap

Future enhancements you might see:

  • Geographic map view of libraries
  • Advanced search with manuscript details
  • Collections comparison tool
  • User submissions and voting
  • API for other applications
  • Multi-language support

Author

Created with ❀️ in the Netherlands

Want recognition? Contribute today!


Made with ❀️ for researchers, historians, and manuscript enthusiasts everywhere.

Visit the live dashboard | View documentation | Contribute

About

A curated, interactive directory of digitized medieval manuscript libraries worldwide. Features instant search, location filtering, and IIIF support. Open source and community-driven.

Topics

Resources

Code of conduct

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages