Coder Social home page Coder Social logo

michaeltran262 / fofola Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kazooo/fofola

0.0 0.0 0.0 1.95 MB

Application for advanced administration of the Kramerius library system

License: GNU General Public License v3.0

JavaScript 61.15% Java 38.33% CSS 0.37% HTML 0.15%

fofola's Introduction

Fofola

License: GPL v3

Fofola je jednoduchá webová aplikace pro rozšířenou administraci knihovního systému Kramerius, která chybí administrátorům systému. Aplikace nabízí přívětivé grafické rozhraní pro spouštění různých procesů jak v rámci Krameria (posíláním požadavků na API) tak i v rámci samotné aplikace.

Fofola slouží ke spouštění následujících procesů:

  • změna přístupových práv, reindexace a mazání dokumentů přes Krameria
  • vytváření a editace virtuálních sbírek
  • přidávání nebo odebírání dokumentů do/z virtuálních sbírek
  • přidávání nebo odebírání donátorů z dokumentů, a také kontrolu přítomnosti donátorů u dokumentů z virtuálních sbírek
  • zveřejnění dokumentů a jejich následovníků podle přístupových práv
  • asynchronní generování PDF dokumentů podle kořenových uuid
  • přidávání nebo odebírání DNNT příznaků

Fofola je schopna zobrazovat stav jednotlivých dokumentů a celých stromů dokumentů. Umožňuje zobrazování stavů interních procesů a procesů v Krameriu, a také základní manipulaci s těmito procesy.

Parametry aplikace

Pro svoji práci Fofola musí byt napojená na Krameria, Apache Solr a Fedora Common Repository, které Kramerius používá. Fofola používá databázi Postgres, a pokud není specifikována externí databáze, spouští interní H2 in-memory databázi (dostupná na http://host/port/h2-console). Fofola je konfigurovatelná přes proměnné prostředí, níže je uveden seznam, popis a defaultní hodnoty.

parameter description example required default value
KRAMERIUS_HOST url Krameria http://kramerius.cz true
KRAMERIUS_USER login uživatele s admin. právy krameriusUser true
KRAMERIUS_PSWD heslo uživatele Krameria krameriusPswd true
FEDORA_HOST url Fedory http://fedora.cz true
FEDORA_USER login uživatele Fedory fedoraUser true
FEDORA_PSWD heslo uživatele Fedory fedoraPswd true
SOLR_HOST url Solru s názvem jádra http://solr.cz/solr/kramerius true
POSTGRES_DB_JDBC_URL url databázi jdbc:postgresql://postgres/fofola false
POSTGRES_DB_USER login uživatele databázi postgresUser false
POSTGRES_DB_PSWD heslo uživatele databázi postgresPswd false
H2_DB_JDBC_URL url H2 databázi jdbc:h2:mem:fofola false jdbc:h2:mem:fofola
H2_DB_USER login uživatele H2 databázi h2_user false user
H2_DB_PSWD heslo uživatele H2 databázi h2_pswd false pswd
PORT port Fofoly 8080 false 8081
TIMEZONE timezona Fofoly Europe/Prague false timezona systému
REQUEST_CONNECTION_TIMEOUT timeout pro odchozí requesty (ms) 60000 false 100000
MAX_CONNECTIONS maximální množství spojení 100 false 10
MAX_CONNECTIONS_PER_ROUTE maximální množství spojení pro jednotlivé porty 100 false 10
H2_LOGGING_LVL úroveň logování H2 databázi DEBUG false WARN
HIBERNATE_LOGGING_LVL úroveň logování Hibernate DEBUG false WARN
HIKARI_LOGGING_LVL úroveň logování HikariCP DEBUG false WARN

Fofola se spouští s uvedenými parametry jako .jar soubor

./gradlew bootJar
java -DSOLR_HOST=http://solr.cz <jiné parametry s prefixem '-D'> -jar fofola-1.0.0.jar 

nebo pomocí příkazu Gradle 'bootRun'

./gradlew bootRun --args='--SOLR_HOST=http://solr.cz <jiné parametry s prefixem "--">'

Docker

Fofola může byt spouštěna v Docker kontejneru. Na Dockerhubu najděte oficiální image web aplikace. Pomocí Gradle pluginu pro dockerizace aplikací od Benjamina Muschko, lokálně dokážete udělat image příkazy

./gradlew buildImage   # image s tagem verze 
./gradlew buildLatest  # image s tagem verze a další s tagem 'latest'

Pro rychlou konfiguraci a start aplikace se používá i Docker compose:

version: "3"
services:
  fofola:
    image: ermak/fofola:latest
    container_name: fofola
    ports:
      - "8081:8081"
    environment:
      - KRAMERIUS_HOST=http://kramerius.cz
      - KRAMERIUS_USER=krameriusUser
      - KRAMERIUS_PSWD=krameriusPswd
      - FEDORA_HOST=http://fedora.cz
      - FEDORA_USER=fedoraUser
      - FEDORA_PSWD=fedoraPswd
      - SOLR_HOST=http://solr.cz/solr/kramerius
      - POSTGRES_DB_JDBC_URL=jdbc:postgresql://fofola-db:5432/fofola
      - POSTGRES_DB_USER=postgresUser
      - POSTGRES_DB_PSWD=postgresPswd
  fofola-db:
    image: "postgres:11.5"
    container_name: fofola-db
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
      - POSTGRES_DB=fofola
    ports:
      - "5432:5432"

Použité technologie

Hlavním jádrem Fofoly je REST API pro přijetí požadavků, které je napsáno v Javě s použitím Spring Boot frameworku. Grafické rozhraní je vytvořeno za pomoci frameworků React a Redux.

Licence

GPL v3

Autoří

Aleksei Ermak a skvěle nápady členů týmu OSDD MZK.

fofola's People

Contributors

kazooo avatar michaeltran262 avatar dependabot[bot] 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.