GithubHelp home page GithubHelp logo

fitzwilliammuseum / fitz-collection-online Goto Github PK

View Code? Open in Web Editor NEW
2.0 5.0 1.0 9.69 MB

A repository to hold the code for the front end/API of the Fitzwilliam Museum's Collections Explorer

Home Page: https://data.fitzmuseum.cam.ac.uk

License: GNU General Public License v3.0

PHP 73.72% Blade 26.12% HTML 0.16%
laravel-framework museums adlib ciim axiell cambridge-university laravel

fitz-collection-online's Introduction

Fitzwilliam Museum Collection front end

DOI
ORCiD

Social card for this repo

This repository contains the code base for a Laravel based front end for the production version of the Fitzwilliam Museum collection application.

This is very much a minimum viable product and to run and install your environment would need to be whitelisted for our solr, axiell, directus, shopify and elastic api instances.

This system is built with the latest versions of Bootstrap and Laravel and uses webpack/npm.

Requirements

PHP 8.1 Node 18.17.0

Installation

  1. Install php on your development environment
  2. Install composer
  3. Install Node and NPM
  4. Then run:
$ git clone https://github.com/FitzwilliamMuseum/fitz-collection-online
$ cd fitz-collection-online
$ composer install
$ npm install
$ npm run production
$ cp .env.example .env

You should now have all the source code installed, and you will then need to edit the .env file to hold all the values required. If you work for the Fitz, you will need to grab this from our Bitwarden vault.

Once you are set up, to run locally:

$ php artisan serve

License

This project's code is licensed under GPL V3

Contributors

Daniel Pett @portableant

Cite this repository

APA style

Pett, D. The Fitzwilliam Museum Collections and API Website Framework [Computer software]. https://github.com/FitzwilliamMuseum/fitz-collection-online

Bibtex style

@software{Pett_The_Fitzwilliam_Museum, author = {Pett, Daniel}, license = {AGPL-3.0}, title = {{The Fitzwilliam Museum Collections and API Website Framework}}, url = {https://github.com/FitzwilliamMuseum/fitz-collection-online} }

fitz-collection-online's People

Contributors

alanjisaacson avatar dependabot[bot] avatar gtrinkwon avatar jamiec24 avatar portableant avatar sean-dunwoody avatar snyk-bot avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

portableant

fitz-collection-online's Issues

Add linked art

As part of the linking islands of data project, we said we would add linked art to the project

Slow looking IIIF css missing

Before I left I made a large commit and forgot to commit one file - the viewer css. At the moment you get the below - an unstyled page, not very slick...

Screenshot 2022-10-30 at 21 33 48

When it should look like:

Screenshot 2022-10-30 at 21 36 05

The missing file is viewer.css and that will be added in a PR that is coming.

Move from Klaro

Change cookie management system to cookie consent vanilla js project

Linked Art representation - 404 on agents

Within the linked art representation, a routing error was made - terminology rather than agents was used. Thus this code block is rendered:

"carried_out_by": [
      {
        "id": "https://data.fitzmuseum.cam.ac.uk/id/terminology/agent-161737",
        "type": "Person",
        "_label": "Trajan (AD 98-117)",
        "referred_to_by": [
          {
            "id": "https://data.fitzmuseum.cam.ac.uk/id/object/104030/maker/ccb09c30-adb3-3185-b5b4-e784e6fb613b",
            "type": "Type",
            "_label": "Ruler",
            "classified_as": [
              {
                "id": "https://data.getty.edu/local/thesaurus/producer-role-statement",
                "type": "Type",
                "_label": "Artist/Maker (Producer) Role Statement"
              },
              {
                "id": "http://vocab.getty.edu/aat/300418049",
                "type": "Type",
                "_label": "Brief Text"
              }
            ],
            "content": "Artists (Visual Artists)",
            "close_match": {
              "id": "http://vocab.getty.edu/aat/300025103",
              "type": "Type",
              "_label": "Artists (Visual Artists)"
            }
          }
        ],
        "close_match": [
          "https://nomisma.org/id/rome",
          "https://sws.geonames.org/3169070",
          "https://www.wikidata.org/entity/Q220",
          "https://pleiades.stoa.org/places/423025",
          "http://vocab.getty.edu/page/tgn/7000874"
        ]
      }

This should render as:

"carried_out_by": [
      {
        "id": "https://data.fitzmuseum.cam.ac.uk/id/agent/agent-161737",
        "type": "Person",
        "_label": "Trajan (AD 98-117)",
        "referred_to_by": [
          {
            "id": "https://data.fitzmuseum.cam.ac.uk/id/object/104030/maker/ccb09c30-adb3-3185-b5b4-e784e6fb613b",
            "type": "Type",
            "_label": "Ruler",
            "classified_as": [
              {
                "id": "https://data.getty.edu/local/thesaurus/producer-role-statement",
                "type": "Type",
                "_label": "Artist/Maker (Producer) Role Statement"
              },
              {
                "id": "http://vocab.getty.edu/aat/300418049",
                "type": "Type",
                "_label": "Brief Text"
              }
            ],
            "content": "Artists (Visual Artists)",
            "close_match": {
              "id": "http://vocab.getty.edu/aat/300025103",
              "type": "Type",
              "_label": "Artists (Visual Artists)"
            }
          }
        ],
        "close_match": [
          "https://nomisma.org/id/rome",
          "https://sws.geonames.org/3169070",
          "https://www.wikidata.org/entity/Q220",
          "https://pleiades.stoa.org/places/423025",
          "http://vocab.getty.edu/page/tgn/7000874"
        ]
      }

Simple fix for this within two files - app/LinkedArt/ObjectOrArtwork.php and app/LinkedArt/Production.php with the route changed from

'id' => route('terminology', ['id' => $maker['admin']['id']]),

to

'id' => route('agent', ['id' => $maker['admin']['id']]),

Change default timezone for app

The system timezone is defaulting to UTC, change to Europe/London. The timezone for this project can only ever be in that zone, the Museum's location will never change.

Drop jQuery

Now that the framework migrated to Bootstrap 5, no need for jQuery

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.