Web umenia is an open platform to explore digitized art collections from public galleries and museums.
Web umenia is developed by lab.SNG: the digital R&D lab of the Slovak National Gallery. We are working with public art organisations to make their art accessible and explorable online so curious people around the world can learn more about works of art and the context they've been created in.
Web umenia offers a user-friendly way to search and explore art from collections of multiple galleries and museums.
Digital reproductions of public domain artworks from several collections are available for download in high resolution for both personal and commercial use
Art organisation with digitized artworks organised in a Collection Management System can easily publish their art via CSV imports or OAI-PMH harvests. If you would like to know more about using Web umenia in your organisation, contact us via email@example.com
Developers interested to build applications on top of Web umenia can use our API. See our wiki on GitHub for more info.
We greatly encourage others to get involved! See our contributing guidelines for more info about different ways to contribute to Web umenia.
We are committed to providing a welcoming and inspiring community for all and expect others who participate in the project to honour our code of conduct.
This software is built with the Laravel framework.
- PHP 7.2.x
Installation with Docker
This requires docker-compose these steps will set up a linked system of 4 containers: web service (nginx webserver) php service (contains our application code) database container -- CAVEAT: don't use 'root' user for db, .env.example has sample username / password when you first build the stack the mysql dockerfile builds a new database and creates a specific user with which web_umenia accesses the db, which is as it should be. You may still access the db as 'root' yourself through elasticsearch container that will communicate internally with one another
- Clone this repository.
firstname.lastname@example.org:SlovakNationalGallery/web-umenia-2.git webumenia/ cd webumenia/
- create a .env file (you can use the included env.example as a base)
- build the whole stack (mysql, elasticsearch, laravel php app + nginx server)
the first time you do this it will take a while, a lot of different components need to be fetched from remote servers. Be patient, subsequent builds won't take nearly as long.
- choose a database - you can set $DB_DATABASE in the environment and switch between different variants by editing that variable.
- start the app
to run it in the background. (In this case you can watch the output of a component like this:
docker-compose up -d
docker-compose logs -f php)
- install dependencies
docker-compose exec php composer install --no-plugins --no-scripts --no-interaction
- run migrations
docker-compose exec php php artisan migrate --seed
- setup elasticsearch
docker-compose exec php php artisan es:setup
- visit http://localhost:8080 in your browser to have a look
to stop the dockerized application:
.env.testing file (you can use the included
.env.testing.example as a base) and run:
docker-compose -f docker-compose.yml -f docker-compose.test.yml run php
You can now fill artworks by adding them manually or importing using the "spice harvester" (harvests using OAI-PMH protocol) using
php artisan oai-pmh:harvest and choosing to harvest
1 [item] Europeana SNG. Or login to admin at
http://yourlocalhost/admin using default credentials
admin and go to
Spice Harvester ->
This application uses IIPImage server for zoomable (and downloadable) images.
IIPImage must be seen locally, what can be achieved using a ProxyForwarding.
To enable image server for default oai set (Europeana), put this lines of code into your virtualhost setup:
ProxyPass /fcgi-bin/iipsrv.fcgi http://imi.sng.cust.eea.sk/publicIS/fcgi-bin/iipsrv.fcgi ProxyPassReverse /fcgi-bin/iipsrv.fcgi http://imi.sng.cust.eea.sk/publicIS/fcgi-bin/iipsrv.fcgi
npm install && npm run dev
For a better developer experience, use
npm run watch to watch a directory for changes and automatically compile LESS into CSS.
Source code in this repository is licensed under the MIT license. Please see the License File for more information.