Repository navigation
Project Structure
Layout of a consumer project created with srl init:
my-report/
├── livingdocs/ # Livingdocs components (see Components)
├── pdf/ # PDFreactor configuration (+ customers/)
├── public/ # Static files
├── src/ # Vue app (App.vue, views, router, assets/scss, …)
├── srl/ # copied by `srl prepare`, gitignored – do not edit
├── .srl/ # generated imports and plugins – do not edit
├── .output/ # build output
├── srl.config.json # design tokens (see Design Tokens)
├── livingdocs.config.json # Livingdocs design settings
└── vite.config.ts
These are (re)generated by the Vite plugin and srl map – change the sources instead of the generated files:
| File | Generated from |
|---|---|
srl/**/*.scss (config modules) |
srl.config.json (beaver) |
srl/index.scss |
system modules + src/assets/scss/placeholders/**
|
.srl/imports/{app,ldd,pdf,word,xbrl}.scss |
src/assets/scss/*.scss, fonts, component scss/ files |
Livingdocs design JSON, .srl/plugins/asyncLdComponent.ts
|
livingdocs/** |
.srl/plugins/asyncSrlComponents.ts, .srl/types/components.d.ts
|
src/components/**/*.vue (global app components) |
Never edit generated files. srl prepare (on npm install) deletes and recreates .srl/ and copies the library's srl/ files; the Vite plugin runs it again when the package version changes. Changes in .srl/, srl/ or .srl/imports/*.scss are lost. Change the sources: component folders, ld-conf.json, properties.json, srl.config.json, src/assets/scss/**.
livingdocs.config.json is generated by the ldd build as well, but it is committed (see Build#design-version).
public/json/, public/html/, public/images/ and public/downloads/ hold the content export from nswow and are gitignored. Without them the dev app has no articles. See Web App Rendering.
Set by the Vite plugin:
| Alias | Points to |
|---|---|
@ |
src/ |
~ |
project root |
#srl |
.srl/ |
#components, #composables, #plugins, #types, #utils, #imports
|
the matching folders in .srl/
|
#ld |
livingdocs/ |
assets |
src/assets/ |
srl |
srl/ |
fa-source, fa-font
|
Font Awesome Free, or Pro if @fortawesome/fontawesome-pro is installed |