The Viaduc project includes 4 code repositories. The present repository cmi-viaduc-web-management
is an Angular application designed for internal management.
Together with the public access application (cmi-viaduc-web-frontend) it uses a common code library (cmi-viaduc-web-core). The frontend applications are hosted in an ASP.NET
container (see backend repository cmi-viaduc-backend) and communicate with the system via a web API. With the release 2.0.0.1113, two new repositories were added to provide the system with IIIF viewer capabilities. There is the actual IIIF-Viewer (cmi-iiif-frontend) and the required backend (cmi-iiif-backend) that adds the required IIIF services like search.
Note: A general description of the repositories can be found in the repository cmi-viaduc.
This is an Angular CLI application.
The files generated by the build process are stored in the client
folder within the CMI.Viaduc.Web.Management
WebAPI project.
The application contains the management GUI for Viaduc.
app
- Components that are directly accessed by routing (1st level route) (
pages
)
- Components that are directly accessed by routing (1st level route) (
administration
- Components and pages for the administration of the system, e.g. parameter administration, monitoring page, etc.
authorizeAccess
- components and pages for the administration of delivery offices and tokens
ordermanagement
- Components and pages for the administration of the order process
userAndRoles
- Components and pages for managing users and their roles
client
- Remaining components and services used within the pages, e.g. for search, ordering, navigation, etc.
shared
- Components used in multiple modules
- Node.js download, LTS version
- Make sure that old angular/cli versions are uninstalled
npm uninstall angular-cli
npm uninstall @angular/cli
npm cache clean --force
- Install Angular CLI
npm install -g @angular/cli
- Clone repository cmi-viaduc-web-core to a directory (e.g. C:\Viaduc)
- Clone repository
cmi-viaduc-web-management
into the same root directory (e.g. C:\Viaduc) - Change to the
cmi-viaduc-web-core
directory with a command line- Execute:
npm i
to install the dependencies - Run:
npm run build
to build the library
- Execute:
- Change to the directory
cmi-viaduc-web-management
with a command line tool- Run:
npm run link
to linkcmi-viaduc-web-core
as component - Run:
npm i
to install the dependencies - Run:
npm run build
build the project into adist
folder insidecmi-viaduc-web-management
.
- Run:
- Pay attention to TSLint
- Move business logic into services
- Run tests once
ng test --watch=false
- Run tests as watcher
ng test
- Variant a.)
- Build using
npm run build
and start ASP.NET (CMI.Viaduc.Web.Management
)
- Build using
- Variant b.)
- Start running build (file watch) using
npm run start
and ASP.NET (CMI.Viaduc.Web.Management
)
- Start running build (file watch) using
GNU Affero General Public License (AGPLv3), see LICENSE
This repository is a copy which is updated regularly - therefore contributions via pull requests are not possible. However, independent copies (forks) are possible under consideration of the AGPLV3 license.
- For general questions (and technical support), please contact the Swiss Federal Archives by e-mail at [email protected].
- Technical questions or problems concerning the source code can be posted here on GitHub via the "Issues" interface.