Skip to content

DoTS-Vue settings

dots-vue is a front-end for browsing and searching TEI corpora published through a DoTS endpoint. The application itself holds no editorial choice: what a deployment looks like, which metadata it shows, how its collections are listed, whether it offers a search page — all of it comes from a settings repository, kept outside the application and plugged in at build time.

Three words, used precisely throughout this site

A deployment is one dots-vue build paired with one settings repository — what a visitor reaches at a single address. A project is a first-level collection of the corpus: ENCPOS and theater are two projects, unrelated to one another, and a deployment may serve several of them. A collection is any node of the DTS tree, at any depth.

This site documents how such a repository is built, using dots-vue-demo-settings — the settings of the DoTS Cookbook — as its worked example.

Why settings live outside the application

One dots-vue codebase serves many deployments. Separating settings from code means a deployment can change its labels, its colours, its metadata panel or its home page without touching — or redeploying — the application, and without any deployment inheriting another's choices.

     dots-vue                          your-deployment-settings
     (the application)                 (this kind of repository)
            │                                    │
            │  build-time alias `confs`          │
            └──────────────┬─────────────────────┘
                           ▼
                   the deployed front-end

What a settings repository contains

*.conf.json at the root one file per collection, plus custom.conf.json for deployment-wide settings
Directories named after collection ids the Vue components and assets belonging to that collection: About pages, a custom home-page block, stylesheets, images

Nothing else is required. A deployment that only wants to relabel a few things can consist of a single custom.conf.json.

Where to start

Project Repository Documentation
DoTS — DTS-compliant publication API dots-suite/dots dots_documentation
dots-vue — the front-end configured here dots-suite/dots-vue
dots-cli-es — indexing CLI and search API dots-suite/dots-cli-es DoTS Search API