Skip to content
This repository has been archived by the owner on Feb 6, 2023. It is now read-only.

Latest commit

 

History

History
51 lines (40 loc) · 2.37 KB

index.md

File metadata and controls

51 lines (40 loc) · 2.37 KB

Project Architecture

Container Diagram

Technology

Directory Structure

/
    .github/                    - Github Meta pages
    .s2i/                       - s2i scripts for openshift
    .vscode/                    - vscode settings 
    config/                     - project configuration
    database/                   - liquibase & database migration scripts
    dist/                       - Location of built scripts
    docs/                       - project documentation
    openshift/                  - Openshift scripts and templates
    scripts/                    - Scripts for supporting development tasks related with the project
    src/                        - Source code
        client/                 - The API Client 
        common/                 - Code commone to client and server
        controllers/            - Controllers (i.e. endpoints)
        db/                     - Database Infrastructure
        infrastructure/         - Base classes and other utilities
        models/                 - Data Models used by controllers
        services/               - Services used by controllers
    templates/                  - Templates used in code generation

Authentication

The following diagram shows the general authentication flow of the authentication from the frontend into the backend and back.

Authentication Flow

Dependency Injection

In order to more cleanly facilitate per-request context and resources such as the current user, this project uses dependency injection and an IOC container that is created on a per-request basis.

This project is using typescript-ioc. Refer to their docs for more information.