All Projects → eeditiones → tei-publisher-app

eeditiones / tei-publisher-app

Licence: GPL-3.0, GPL-3.0 licenses found Licenses found GPL-3.0 LICENSE GPL-3.0 LICENSE.txt
The main TEI Publisher app

Programming Languages

XQuery
69 projects
HTML
75241 projects
CSS
56736 projects
XSLT
1337 projects
javascript
184084 projects - #8 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to tei-publisher-app

evt-viewer
Edition Visualization Technology 2 - development
Stars: ✭ 66 (+32%)
Mutual labels:  digital-humanities, tei-xml, digital-edition
kitodo-presentation
Kitodo.Presentation is a feature-rich framework for building a METS- or IIIF-based digital library. It is part of the Kitodo Digital Library Suite.
Stars: ✭ 33 (-34%)
Mutual labels:  tei, tei-xml
workshops
Scholarly Communications Workshops
Stars: ✭ 13 (-74%)
Mutual labels:  digital-humanities
comp thinking social science
Computational Thinking for Social Scientists book project
Stars: ✭ 42 (-16%)
Mutual labels:  digital-humanities
etymology-db
An open etymology dataset created using Wiktionary data. Contains 3.8M entries, 1.8M terms, 2900 languages, and 31 unique relationship types.
Stars: ✭ 20 (-60%)
Mutual labels:  digital-humanities
ham4corpus
Data from "Hamilton: An American Musical", formatted for reuse. See below for some interesting text analysis basic findings! I am not throwing away my stopword?
Stars: ✭ 53 (+6%)
Mutual labels:  digital-humanities
cummings.ee
A collection of the work of Edward Estlin Cummings, as it enters the public domain.
Stars: ✭ 32 (-36%)
Mutual labels:  digital-humanities
awesome-dhtools
Software for humanities scholars using quantitative or computational methods.
Stars: ✭ 72 (+44%)
Mutual labels:  digital-humanities
awesome-digital-history
Find primary sources online and learn how to research history digitally.
Stars: ✭ 110 (+120%)
Mutual labels:  digital-humanities
wiki
从diy行为艺术到diy苏格拉底式对话,从diy一个仪式到diy一次旷课,各种活动指南的百科。diy💔是706孵化的一个非代码开源项目。
Stars: ✭ 49 (-2%)
Mutual labels:  digital-humanities
dvt
Distant Viewing Toolkit for the Analysis of Visual Culture
Stars: ✭ 57 (+14%)
Mutual labels:  digital-humanities
booknlp
BookNLP, a natural language processing pipeline for books
Stars: ✭ 636 (+1172%)
Mutual labels:  digital-humanities
TopicsExplorer
Explore your own text collection with a topic model – without prior knowledge.
Stars: ✭ 53 (+6%)
Mutual labels:  digital-humanities
Intro-Cultural-Analytics
Introduction to Cultural Analytics & Python, course website and online textbook powered by Jupyter Book
Stars: ✭ 137 (+174%)
Mutual labels:  digital-humanities
bechdel-test
Does your favorite film pass the test?
Stars: ✭ 25 (-50%)
Mutual labels:  digital-humanities
aut
The Archives Unleashed Toolkit is an open-source toolkit for analyzing web archives.
Stars: ✭ 111 (+122%)
Mutual labels:  digital-humanities
TraduXio
A participative platform for cultural texts translators
Stars: ✭ 19 (-62%)
Mutual labels:  digital-humanities
twic
Topic Words in Context (TWiC) is a highly-interactive, browser-based visualization for MALLET topic models
Stars: ✭ 51 (+2%)
Mutual labels:  digital-humanities
Curatescape
A set of add-ons for the Omeka content management system, designed specifically for location-based narrative content, and compatible with (optional) paid Curatescape mobile applications.
Stars: ✭ 39 (-22%)
Mutual labels:  digital-humanities
infinite-ulysses-dissertation
InfiniteUlysses.com repo as it was when I finished the related Ph.D. project. See instead github.com/amandavisconti/infinite-ulysses-public for latest code, as this repo is frozen to represent my dissertation.
Stars: ✭ 21 (-58%)
Mutual labels:  digital-humanities

TEI Publisher Docker Snapshots

TEI Publisher facilitates the integration of the TEI Processing Model into exist-db applications. The TEI Processing Model (PM) extends the TEI ODD specification format with a processing model for documents. That way intended processing for all elements can be expressed within the TEI vocabulary itself. It aims at the XML-savvy editor who is familiar with TEI but is not necessarily a developer.

TEI Publisher supports a range of different output media without requiring advanced coding skills. Customising the appearance of the text is all done in TEI by mapping each TEI element to a limited set of well-defined behaviour functions, e.g. “paragraph”, “heading”, “note”, “alternate”, etc. The TEI Processing Model includes a standard mapping, which can be extended by overwriting selected elements. Rendition styles are transparently translated into the different output media types like HTML, XSL-FO, LaTeX, or ePUB. Compared to traditional approaches with XSLT or XQuery, TEI Publisher may thus easily save a few thousand lines of code for media specific stylesheets.

Website and Support

A demo and further documentation is available on:

https://teipublisher.com/

For general questions and discussions, please join the #community room on the e-editiones slack.

If you need professional support or consulting, feel free to send your inquiry to eXist Solutions.

Installation

A prebuilt version of the app can be installed from exist-db's central app repository. On your exist-db installation, open the package manager in the dashboard and select "TEI Publisher" for installation. This should automatically install dependencies such as the "TEI Publisher: Processing Model Libraries."

Important: TEI Publisher from version 5.0.0 requires eXist-db 5.0.0 or later.

Documentation

For an overview of the app and library, please refer to the documentation available.

Localization

Please use our Crowdin space to help expand and improve localization

Crowdin

Building

The following instructions apply to both, TEI Publisher itself as well as apps generated from it. Building needs Java and Apache Ant.

TEI Publisher requires the pb-components package, which can either be loaded from an external server (CDN) or imported into the local build. Using the CDN is recommended unless you want to use a cutting edge build of the components or you need TEI Publisher to work without an internet connection.

Using the CDN for Components

Run Apache ant in the cloned directory to get a .xar file in build/, which can be uploaded into an eXist instance via the dashboard.

Self-hosted Components

This will include all user-interface components and their dependencies into the created package. In addition to ant, you should have nodejs and npm installed on the machine used for building:

  1. check if the path to the npm executable in build.properties points to the right location on your machine
  2. call ant xar-local to build TEI Publisher

Sometimes you may also want to update the pb-components library to a newer or custom version. The procedure is as follows:

  1. edit the dependencies section of package.json to include the desired version of the pb-components library
  2. edit modules/config.xqm and change the variable $config:webcomponents to read 'local' instead of a version number. This way, the javascript bundles will be loaded from within the TEI Publisher app instead of a CDN
  3. run ant xar-local to generate a .xar

License

This software is licensed under the GPLv3 license. If you need a different license: please contact us and we'll find an arrangement.

TEI Publisher was initiated and released to the public as free software by with contributions from other users. It's development was supported by a wide range of privately and publicly funded projects.

Development is supported and coordinated by e-editiones.

e-editiones logo

Editing Resources

All resources can either be edited live via eXist-db's XML editor eXide or via local development having ant installed.

Development

Following instructions are only relevant for developers who want to contribute to TEI Publisher. Different approaches are possible:

  1. use eXide to directly change resources inside the database, then sync them to a local directory where you have checked out the code from gitlab
  2. use the Atom or Visual Studio Code editors with the corresponding eXistdb plugin and open a local copy of the TEI Publisher repository as a project. Both editor plugins have a feature to sync local modifications into the database. This is the most convenient and recommended method. Similar workflow is possible in Visual Studio Code.

Docker

Build Docker Image

  • execute docker build -t existdb/teipublisher:6.0.0 . in your terminal

Run Docker Image

  • execute docker run --publish 8080:8080 --detach --name tp existdb/teipublisher:6.0.0 in your terminal
  • open localhost:8080 in your browser

How to run a completely dockerized development environment in vscode

With this setup everything will be living inside docker, so you do not need anything apart from vscode and docker, not even Java or nodejs.

Make sure you have Visual Studio Code installed.

Make sure you do not have eXist running on 8080.

  1. install “Remote - Containers” extension in vscode. In addition we highly recommend to install the "existdb-vscode" and "vscode-xml" extensions.
  2. cmd-shift-p and find “Remote Containers: Clone Repository in Container Volume”
  3. confirm “Clone a repository from GitHub in a Container Volume”
  4. type “tei-publisher-app” and select “eeditiones/tei-publisher-app”
  5. select “Create a unique volume”

The container is now being built, which takes a while as it:

  • pulls Java 8,
  • installs eXist 5.2.0,
  • clones all dependencies
  • and installs everything in the database.

Once it completes, you should see vscode with TEI Publisher directory opened and you can go to http://localhost:8080 to find the dashboard as usual. Once you're done for the moment, choose Close Remote Connection from the file menu. This will properly stop the container and eXist. To start again, either use menu File/Open Recent and choose the entry ending with [Dev Container] or select the Remote Explorer tab on the left sidebar, make sure it shows your Containers in the top dropdown, and start the one you created before.

Important: After you stop the container, give eXist a chance to shut down properly before you restart, so please wait a few seconds.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].