fitz-main-website
A simple Laravel front end for the production version of the Fitzwilliam Museum website.
Science Score: 85.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
✓Committers with academic emails
2 of 11 committers (18.2%) from academic institutions -
✓Institutional organization owner
Organization fitzwilliammuseum has institutional domain (fitzmuseum.cam.ac.uk) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.5%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
A simple Laravel front end for the production version of the Fitzwilliam Museum website.
Basic Info
- Host: GitHub
- Owner: FitzwilliamMuseum
- License: gpl-3.0
- Language: Blade
- Default Branch: master
- Homepage: https://fitzmuseum.cam.ac.uk
- Size: 31.2 MB
Statistics
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 12
- Releases: 15
Topics
Metadata Files
README.md
Framework for the Fitzwilliam Museum website
This repository contains the code base for a Laravel based front end for the latest version of @fitzwilliammuseum website.
The front end is very simple and uses Bootstrap latest framework, latest JQuery and various libraries to interface with a headless API provided by our installation of the @directus 8 system, Solr and ElasticSearch endpoints.
The models in this system point at an API rather than a database.
Data sources
Data comes from various systems and API endpoints.
- Main content - Directus Headless CMS
- Search content - SOLR 8.11.1 instance
- Collections content - CIIM version 5 ElasticSearch instance from Knowledge Integration, standard mappings and the nascent API
- Twitter - API driven
- Shopify - FME systems queried and indexed daily into SOLR
- Sketchfab
- Libsyn for podcasts
- UCAM streaming media service
- YouTube
- Vimeo
Cache
In production, we use REDIS. Locally use File based caching unless you want to install REDIS.
Deployment
View deployment information on the Fitzwilliam Docs.
Installation
- Install php 8.1 into your environment
- Install composer and then do the following:
git clone git@github.com:FitzwilliamMuseum/fitz-main-website.git cd fitz-main-website composer install php artisan key:generate cp .env.example .env npm installOn some ubuntu machines, the npm install script fails at the npm run copy command. To fix this run the commands separately:
bash
npm run copy-uv-html # "cp -R node_modules/universalviewer/dist/uv.html ./public", Universal viewer copy
npm run copy-uv-css # "cp -R node_modules/universalviewer/dist/uv.css ./public/",
npm run copy-uv-assets # "cp -R node_modules/universalviewer/dist/umd/ ./public/umd/",
npm run copy-icons # "cp -R node_modules/super-tiny-icons/images/svg/ ./public/images/svg/",
npm run copy-cookie-css # cp -R node_modules/vanilla-cookieconsent/dist/*.css ./resources/css/",
npm run copy-cookie-js # "cp -R node_modules/vanilla-cookieconsent/dist/*.js ./resources/js/",
npm run copy-pannellum-css # "cp -R node_modules/pannellum/build/*.css ./public/css/",
npm run copy-pannellum-js # "cp -R node_modules/pannellum/build/*.js ./public/js/",
If the versions have been updated you may need to run:
bash
npm run production
Which will compress all the css and js files.
Env setup
Fill in variables for your instance (Cache etc), values from the production version of the websites are on the main network drive.
nano .env
A few notes on env settings
Set CACHE_DRIVER to redis or file depending on your environment.
Set the SOLR_ENABLED flag to true or false based on whether Solr is supported in your environment.
Running a local copy
If you are running locally you can preview the website via:
bash
php artisan serve
I feel the need for speed
To cache icons and routes:
bash
php artisan icons:cache
php artisan route:cache
License
GPL V3
Contributors
Daniel Pett @portableant
Owner
- Name: The Fitzwilliam Museum
- Login: FitzwilliamMuseum
- Kind: organization
- Email: itoffice@fitzmuseum.cam.ac.uk
- Location: Cambridge
- Website: https://fitzmuseum.cam.ac.uk
- Twitter: fitzmuseum_uk
- Repositories: 62
- Profile: https://github.com/FitzwilliamMuseum
The Fitzwilliam Museum Digital and IT team's code and tricks
Citation (CITATION.cff)
cff-version: 1.2.0
title: The Fitzwilliam Museum Main Website Framework
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Daniel
family-names: Pett
email: dejp3@cam.ac.uk
affiliation: 'St Edmund''s College, University of Cambridge'
orcid: 'https://orcid.org/0000-0002-0246-2335'
- given-names: Georgina
family-names: Doji
- given-names: Olivia
family-names: Warren
identifiers:
- type: doi
value: 10.5281/zenodo.6304361
description: Zenodo issued DOI
repository-code: >-
https://github.com/FitzwilliamMuseum/fitz-main-website
url: 'https://fitzmuseum.cam.ac.uk'
abstract: >-
This repository holds the Laravel 9 framework for
the front end build of the Fitzwilliam Museum's
website. This interfaces with a headless CMS and
collections API.
keywords:
- laravel
- museum
- open-source
license: AGPL-3.0
GitHub Events
Total
- Delete event: 65
- Issue comment event: 42
- Push event: 198
- Pull request review comment event: 11
- Pull request event: 140
- Pull request review event: 39
- Create event: 65
- Commit comment event: 1
Last Year
- Delete event: 65
- Issue comment event: 42
- Push event: 198
- Pull request review comment event: 11
- Pull request event: 140
- Pull request review event: 39
- Create event: 65
- Commit comment event: 1
Committers
Last synced: over 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Daniel Pett | d****3@c****k | 1,833 |
| Miro Ostafiński | o****m@g****m | 129 |
| JamieC24 | j****e@s****t | 128 |
| Gareth Trinkwon | g****h@s****t | 37 |
| Alan Isaacson | 3****n | 33 |
| Sean Dunwoody | s****n@s****t | 27 |
| dependabot[bot] | 4****] | 19 |
| George Doji | g****4@c****k | 5 |
| Simon R Jones | s****n@s****t | 4 |
| snyk-bot | s****t@s****o | 3 |
| Oliver Warren | 6****n | 2 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 40
- Total pull requests: 185
- Average time to close issues: 8 months
- Average time to close pull requests: 17 days
- Total issue authors: 1
- Total pull request authors: 9
- Average comments per issue: 0.8
- Average comments per pull request: 0.21
- Merged pull requests: 110
- Bot issues: 0
- Bot pull requests: 29
Past Year
- Issues: 0
- Pull requests: 74
- Average time to close issues: N/A
- Average time to close pull requests: 28 days
- Issue authors: 0
- Pull request authors: 8
- Average comments per issue: 0
- Average comments per pull request: 0.27
- Merged pull requests: 27
- Bot issues: 0
- Bot pull requests: 15
Top Authors
Issue Authors
- portableant (40)
Pull Request Authors
- portableant (74)
- ostafinskim (59)
- dependabot[bot] (36)
- JamieC24 (24)
- AlanJIsaacson (5)
- sean-dunwoody (4)
- gtrinkwon (3)
- o-s-warren (2)
- ChrisButterworth (2)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- fitzwilliammuseum/broken-link-checker 1.0.0 composite
- actions/checkout master composite
- actions/upload-artifact master composite
- foo-software/lighthouse-check-action master composite
- foo-software/lighthouse-check-status-action master composite
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/stale v5 composite
- 1202 dependencies
- ansi-regex ^6.0.1 development
- async ^3.2.4 development
- axios ^0.27.2 development
- bootstrap ^5.2.0 development
- cross-env ^7.0.3 development
- glob-parent ^6.0.2 development
- is-svg ^4.3.2 development
- jquery ^3.6.0 development
- laravel-mix ^6.0.49 development
- laravel-mix-purgecss ^6.0.0 development
- lodash ^4.17.21 development
- node-forge ^1.3.1 development
- nth-check ^2.1.1 development
- object-path >=0.11.8 development
- postcss ^8.4.16 development
- resolve-url-loader ^5.0.0 development
- sass ^1.54.5 development
- sass-loader ^13.0.2 development
- serialize-javascript ^6.0.0 development
- ssri ^9.0.1 development
- url-parse ^1.5.10 development
- vue-template-compiler ^2.7.9 development
- websocket-extensions >=0.1.4 development
- @popperjs/core ^2.11.6
- @xmldom/xmldom ^0.8.2
- autoprefixer ^10.4.8
- clean-css ^5.3.1
- leaflet-iiif ^3.0.0
- minimist >=1.2.6
- pannellum ^2.5.6
- popper.js ^1.16.1
- super-tiny-icons ^0.4.0
- universalviewer ^4.0.8
- vanilla-cookieconsent ^2.8.5
- barryvdh/laravel-ide-helper ^2.12.3 development
- fakerphp/faker ^1.20.0 development
- mockery/mockery ^1.5.0 development
- nunomaduro/collision ^6.2 development
- phpunit/phpunit ^9.5.22 development
- sven/artisan-view ^3.5 development
- alaouy/youtube ^2.2.5
- arcanedev/laravel-markdown ^6.0
- atymic/twitter ^3.1
- codeat3/blade-fluentui-system-icons ^1.30.1
- conedevelopment/blade-filters ^1.0
- diglactic/laravel-breadcrumbs ^v8.0.0
- elasticsearch/elasticsearch ^7.17.0
- ext-iconv *
- ext-intl *
- ext-json *
- fitzwilliammuseum/instagram-php-scraper master
- fitzwilliammuseum/maps master
- fruitcake/laravel-cors ^3.0.0
- gmostafa/php-graphql-client ^1.13
- guzzlehttp/guzzle ^7.4.5
- imagekit/imagekit ^2.0.0
- imliam/laravel-blade-helper ^1.4.3
- jmikola/geojson ^1.1.1
- laravel/framework ^9.25
- laravel/tinker ^2.7.2
- laravel/ui ^3.4.6
- laravelcollective/html ^6.3
- mews/purifier ^3.3.8
- olssonm/l5-very-basic-auth ^6.7
- owenvoke/blade-fontawesome ^2.0
- php ^8.0|^8.1
- phpclassic/php-shopify ^v1.1.24
- phpfastcache/phpfastcache ^9.1.2
- predis/predis ^1.1.10
- psr/cache ^3.0
- rebing/graphql-laravel ^8.3
- solarium/solarium ^6.2.6
- spatie/laravel-feed ^4.1.4
- spatie/laravel-googletagmanager ^2.6.6
- spatie/laravel-ignition ^1.3.1
- spatie/laravel-missing-page-redirector ^2.9.2
- spatie/laravel-responsecache ^7.4.1
- spatie/laravel-sitemap ^6.2.0
- symfony/cache ^6.1.3
- symfony/http-kernel ^6.2.x-dev
- upthemedia/xss-protection ^0.0.8
- xantios/mimey ^2.2.0
- 193 dependencies