Skip to content

As part of a larger system demo, this subsystem is going to be a React UI that calls a separate API.

Notifications You must be signed in to change notification settings

crjcodes/LabDemo.LabReactUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Purpose

As part of a larger system demo, this subsystem is going to be a React UI that calls a separate API.

Tech Used

  • .NET 7
  • OpenApi

(not a TDD project)

Status

Currently, a bare-bones skeleton for the eventual goal. Runs in debug only for now, via the UI's launch settings environment variable for the API url.

Details

OpenAPI

Note that the swagger.json is currently manually copied when running the API in debug to the file in the UI project.

There are ways to automate this.

The System

Eventually, the overall system will consist of

  1. This API, providing information from database (instead of the current mocked data from json configuration file)
    1. Will include stand-alone repo, ci-cd, testing up to the level of the api as a whole, and a docker container running the API
    2. This will include ci-cd all the way through deployment
  2. A front-end UI interactively charting the data from the API, probably in Razor
    1. Will include stand-along repo, ci-cd, testing up to the level of the subystem (maybe using Playwright?), and a docker container running the UI
    2. This will include ci-cd all the way through deployment
  3. An integration project solution that will orchestrate the api and UI in docker containers, with the ability to run ecosystem tests
  • Each subsystem's project solution will have the ability to be run locally with or without its docker container, from the IDE or the command-line
  • The integration project solution will be blocked from production

I chose to separate the api from the ui, instead of the usual minimal API approach of putting everything into the web front-end app -- sse Separation of Concerns

Design

The design covers not only the actual apps -- the ui and api -- BUT ALSO the structure of the repository, the building, the testing, the publishing, the monitoring.

The UI currently is a dumbed-down, write-text-directly to the browser. It knows about the API it queries via OpenApi (swagger.json).

In the future, the UI will be ramped for a front-end UI framework -- probably React

REPO

TESTING

CI-CD

TBD

DEPLOYMENT

Currently, I've been running these only in debug, locally. I do have a free Azure account that I may be able to deploy to.

MONITORING

Explore Azure possibilities?

About

As part of a larger system demo, this subsystem is going to be a React UI that calls a separate API.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages