Giter VIP home page Giter VIP logo

europeana-contribute's Introduction

Europeana Contribute

Build Status Security Maintainability Test Coverage

Europeana Contribute is a contribution platform enabling members of the public to share their European cultural heritage with Europeana.

Requirements

  • Ruby 2.5.5 & Bundler
  • MongoDB
  • Redis
  • S3 object storage

Getting started

For non-production environments, you may use the supplied Docker configuration to get started:

bundle exec ./docker/setup
docker-compose up

Docker will now be running three containers:

  • minio for S3 object storage at localhost:3001, including a web UI at http://localhost:3001/
  • mongodb for metadata storage at localhost:3002
  • redis for enqueuing sidekiq jobs at localhost:3003

Your S3 access and secret keys along with other S3 configuration will have been written to the files .env.development and .env.test. Uploaded files will be stored in tmp/minio.

Install the gem bundle:

bundle install

Create MongoDB indexes, and seed:

bundle exec rake db:mongoid:create_indexes
bundle exec rake db:seed

Create an admin user:

bundle exec rake user:create [email protected] PASSWORD=secret

Start the web server and a sidekiq instance using foreman:

bundle exec foreman start

Now Europeana Contribute will be accessible at http://localhost:5000/ and its admin interface at http://localhost:5000/users and http://localhost:5000/contributions

If no other port is specified, port 5000 is set as the default by foreman initialization. To change the port simply add another PORT to your .env file.

#.env
PORT=3000

reCAPTCHA

In order to prevent bots from submitting content through the UGC application, anonymous users will be required to prove they are not robots using the reCAPTCHA tool. To enable this functionality you need to set ENV variables for the relevant keys

  • RECAPTCHA_SITE_KEY
  • RECAPTCHA_SECRET_KEY

Testing

System tests use Firefox in headless mode.

License

Licensed under the EUPL v1.2.

For full details, see LICENSE.md.

europeana-contribute's People

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

bhanditz

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.