Code Monkey home page Code Monkey logo

cloudref's Introduction

CloudRef License:MIT Build Status Help Contribute to Open Source Join Open Source Firday

CloudRef is a web-based tool for managing bibliographical references.

Scientific publication: Oliver Kopp, Uwe Breitenbücher, Tamara Müller: CloudRef – Towards Collaborative Reference Management in the Cloud. ZEUS 2018, CEUR-WS.org

CloudRef supports collaborative work and quality assurance of references. The software consists of an Angular application at the front end and a Java application at the back end. For the front end the admin template "ng2-admin" by Akveo is used.

CloudRef Screenshot

Start using Docker

  1. docker run -p 127.0.0.1:8080:8080 jabref/cloudref
  2. Open http://localhost:8080/
  3. Use maintainer/developer as login

The user maintainer has full rights for merging references. Other users can just be created via the login form and cannot merge if the threshold of 3 was not reached.

Note that the data is stored inside the Docker container and might get lost. To connect a local folder (e.g., D:\CloudRef) to docker, use following command:

docker run --rm -v"D:/CloudRef:/root/CloudRef" -p 127.0.0.1:8080:8080 jabref/cloudref

Local build and start

  1. docker build -t cloudref .
  2. docker run -p 127.0.0.1:8080:8080 cloudref
  3. Open http://localhost:8080/
  4. Use maintainer/developer as login

Installation

Installation of required software

  1. Install node.js
  2. Install Java JDK8

Node version >= 6.0 and NPM version >= 3 required!

Versions can be checked with:

node -v
npm -v

Get application and install dependencies

  1. Clone repository or download .zip file

  2. Navigate into the "frontend" folder of the project

  3. Install dependencies

    npm install
    

Start application

  1. Front end: run following command in the "frontend" folder

    npm start
    
  2. Back end: run following command in the "backend" folder

    ./gradlew run
    

The application is available at http://localhost:4200 and a Swagger definition of the RESTful web service of the back end at http://localhost:8080/swagger.json.

Set role of user to 'MAINTAINER'

A user with the role 'MAINTAINER' can additionally edit a suggestion for modification. Furthermore, he can accept and reject suggestions directly. The role of a user cannot be changed through the user interface but in the database.

Possibility to change the role:

  1. Download the SQLite Command Line Shell ("sqlite-tools") from https://sqlite.org/download.html.

  2. Copy sqlite3.exe into the folder where the database is stored {USER_DIRECTORY}/CloudRef

  3. Open sqlite3.exe file

  4. Run

    .open CloudRef.sqlite
    UPDATE User
    SET role = 'MAINTAINER'
    WHERE username = {username};
    

Development

We needed to change the basePath in DefaultApi.ts as follows

protected basePath = location.protocol + '//' + location.hostname + ':' + location.port === '4200' ? '8080' : location.port;

In case you regenerate DefaultApi.ts, please patch this line.

cloudref's People

Contributors

dependabot[bot] avatar koppor avatar luko0610 avatar muelletr avatar stefan-kolb avatar

Watchers

 avatar

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.