README.md 2.61 KB
Newer Older
1
# EMo Viewer
Mathias Goebel's avatar
Mathias Goebel committed
2

mrodzis's avatar
mrodzis committed
3
Viewer for the modular framework to present digital editions.
Mathias Goebel's avatar
Mathias Goebel committed
4

5
6
7
8
**Note:**
Although the EMo Viewer is designed as a generic viewer for digital editions, it is currently developed within the scope of the [Ahiqar project](https://gitlab.gwdg.de/subugoe/ahiqar).
This is the reason for "Ahiqar" being mentioned several times in the docs of this repo.

9
Demo: <https://subugoe.pages.gwdg.de/emo/Qviewer/develop>
Nils Windisch's avatar
MINOR    
Nils Windisch committed
10

11
12
(For newer branches the demo is deployed in a directory named with branch name lowercased, shortened to 63 bytes, and with everything except `0-9` and `a-z` replaced with `-` (CI_COMMIT_REF_SLUG).
Also the commit short hash can be used to see a demo.
mrodzis's avatar
mrodzis committed
13
14
15
16
17
18
19
20
21
22
23
24

## Getting Started

### Prerequisites

To get the EMo Viewer up and running you should have the following software installed:

* npm
* vue-cli (globally installed)
* vue-cli-service-global (globally installed)

For using the development mode you also need
Nils Windisch's avatar
Nils Windisch committed
25

mrodzis's avatar
mrodzis committed
26
27
28
29
30
31
32
33
34
35
36
* quasar-cli (globally installed)

To get all dependencies via `npm`, simply run

```bash
npm install -g @vue/cli @vue/cli-service-global @quasar/cli
```

### Installing

### Get the Dependencies
37

Mathias Goebel's avatar
Mathias Goebel committed
38
39
40
41
```bash
npm install
```

mrodzis's avatar
mrodzis committed
42
### Start the App in Development Mode (Hot-Code Reloading, Error Reporting, etc.)
43

Mathias Goebel's avatar
Mathias Goebel committed
44
45
46
```bash
quasar dev
```
Nils Windisch's avatar
Nils Windisch committed
47

schneider210's avatar
schneider210 committed
48
### Lint the files
49

Mathias Goebel's avatar
Mathias Goebel committed
50
51
52
53
```bash
npm run lint
```

mrodzis's avatar
mrodzis committed
54
### Build the App for Production
55

Mathias Goebel's avatar
Mathias Goebel committed
56
57
58
59
```bash
quasar build
```

mrodzis's avatar
mrodzis committed
60
### Customize the Configuration
61

Mathias Goebel's avatar
Mathias Goebel committed
62
See [Configuring quasar.conf.js](https://quasar.dev/quasar-cli/quasar-conf-js).
mrodzis's avatar
mrodzis committed
63

64
## Dockerfile
Nils Windisch's avatar
Nils Windisch committed
65

66
67
The dockerfile is used at GitLab CI.
It needs to be updated, when either node or quasar-cli should be updated.
Nils Windisch's avatar
Nils Windisch committed
68
69

```bash
70
docker build --pull -t docker.gitlab.gwdg.de/subugoe/emo/qviewer/node .
71
72
docker push docker.gitlab.gwdg.de/subugoe/emo/qviewer/node
```
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95

## Connecting the Viewer with a Backend

The viewer expects JSON that complies to the [SUB's generic TextAPI](https://subugoe.pages.gwdg.de/emo/text-api/) in order to function properly.
To establish a link to the backend, the viewer's entrypoint in `src/index.template.html` has to be modified:

```html
"entrypoint": "https://{server}{/prefix}/{collection}/collection.json"
```

The entrypoint should point to the collection you want to be displayed.

## Contributing

Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.

## Versioning

We use [SemVer](https://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://gitlab.gwdg.de/subugoe/emo/Qviewer/-/tags).

## Authors

See the list of [contributors](https://gitlab.gwdg.de/subugoe/emo/Qviewer/-/graphs/develop) who participated in this project.