Giter Club home page Giter Club logo

journal-observatory-browser's Introduction

The Journal Observatory Browser

The Journal Observatory Browser is a proof-of-concept demonstrator showing the power of integrating journal information from diverse open data sources to support three use-case areas: open access publishing, preprinting and peer review procedures.

The Journal Observatory Browser aggregates data from DOAJ, Sherpa Romeo, OpenAlex and Wikidata, as well as data provided by publishers.

The Journal Observatory Browser uses the Scholarly Communication Platform Framework developed in the Journal Observatory project funded by the Dutch Research Council (NWO).

The Journal Observatory Browser has been developed by Bram van den Boomen and Nees Jan van Eck at the Centre for Science and Technology Studies (CWTS) at Leiden University.

The Journal Observatory Browser has been developed in JavaScript using React, Material-UI, and a few other open source libraries.

Usage

The Journal Observatory Browser is hosted at https://app.journalobservatory.org.

License

The Journal Observatory Browser is distributed under the MIT license.

Issues

If you encounter any issues, please report them using the issue tracker on GitHub.

Contribution

You are welcome to contribute to the development of The Journal Observatory Browser. Please follow the typical GitHub workflow: Fork from this repository and make a pull request to submit your changes. Make sure that your pull request has a clear description and that the code has been properly tested.

Development and deployment

The latest stable version of the code is available from the main branch on GitHub. The most recent code, which may be under development, is available from the develop branch.

Requirements

To run the Journal Observatory Browser locally and to build production-ready bundles, Node.js and npm need to be installed on your system.

Setup

Run

npm install

to install all required Node.js packages.

Development

Run

npm start

to build a development version and serve it with hot reload at http://localhost:3000.

Deployment

Run

npm run build

to build a deployment version. The production-ready minified bundle is stored in the build/ folder.

journal-observatory-browser's People

Contributors

bramboomen avatar neesjanvaneck avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

journal-observatory-browser's Issues

Error handling

Cases

  • Overall robuustheid
  • GraphDB is offline
  • Geen resultaten op zoek-pagina
  • Missende resultaten op zoek-pagina
  • Missende secties/properties op detail pagina

Caching padlist

Verander de store.pads.pads van Array naar Object:

type PadsState = {
    pads: PadList;
    total: number;
}
type PadList = {
    [page: number]: Array<object>
}

Vraag alleen een nieuwe padlist op als pads[page] == undefined
Bij een nieuwe search, vraag nieuwe pads[0], clear pages 1..

Improve searching

  • Improve multi word search, for example 'journal informetrics'. Search using an AND operator instead of an OR operator.
  • Support search by partial words, for example: 'inform' -> results: 'information', 'infrometrics', ...

Add footer

In the footer we could add links to:

  • Project website
  • Framework paper
  • Ontology
  • SPARQL endpoint
  • API
  • GitHub repositories

hasOpenAccessFee

Sherpa romeo has a field hasOpenAccessFee without an amount, this should be reflected in the webapp ("?" value)

Sort policies

Elsewhere:
default policy first
order by allowed/prohibited
order by version

Documentatie

Uitgebreide documentatie

  • Alle functies
  • Alle componenten
  • Deployment
  • Libraries
  • Gebruik
  • Verdere ontwikkeling

Redux(?)

Redux lijkt geschikt (voornamelijk op de zoekpagina) om state changes bij te houden en om data te cachen.
Kost wellicht extra tijd en complexiteit om te implementeren.

Filters op Search Page

Source:

  • DOAJ
  • OpenAlex
  • Sherpa Romeo
  • ...

Publication policy

Publication policy:

  • No publication policy
  • Publication policy

Access type:

  • No open access
  • Open access

Publication fee:

  • No APC
  • APC
    [Slider]

Copyright owner:

  • Author
  • Publisher
  • ...

Embargo period:

  • No embargo
  • Embargo
    [Slider]

Publication elsewhere policy

Publication elsewhere policy:

  • No publication elsewhere policy
  • Publication elsewhere policy

Version:

  • Published version
  • Accepted version
  • ...

Location:

  • Institutional Repository
  • Author's Homepage
  • ...

License:

  • CC-BY
  • CC-BY-NC
  • ...

Copyright owner:

  • Author
  • Publisher
  • ...

Embargo period:

  • No embargo
  • Embargo
    [Slider]

Evaluation policy

Evaluation policy:

  • No evaluation policy
  • Evaluation policy

Identity transparency:

  • All identitiesvisible
  • Single anonymized
  • Double anonymized
  • Triple anonymized

Reviewer interacts with:

  • Editor
  • Other Reviewer(s)
  • Authors

Review information published:

  • ...

Post publication commenting:

  • Open
  • On invitation

Reconsider ordering of information

The information provided for a certain journal, e.g. this one, starts with the name, identifiers, and publishers. However, given the target audience (researchers trying to gather information on the various policies) it might make sense to reorder them, starting with the policies, and then providing the more technical metadata. This would make it more useful, in my view.

Details pagina vormgeving

(beta.sherpa.ac.uk)

Single column
Source filters aan de rechterkant
meer continuiteit met hoofdpagina

Loading skeleton

global state 'loading`
if loading, no results -> skeleton
if no results -> no results

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.