feat: initial commit #1

Merged
bermudalamb merged 1 commits from feature/initial-commit into main 2026-06-23 11:20:48 -05:00
Owner

Summary

This PR introduces the foundational codebase and project structure for the Strata.Analytics application. It establishes the multi-project backend ecosystem (.NET 6.0), a frontend React dashboard built with TypeScript, initial testing frameworks, containerization scripts, and continuous integration pipeline badges.

Core Changes

1. Repository & CI/CD Setup

2. Infrastructure & Containerization

  • Dockerization: Implemented specialized multi-stage Dockerfiles for various architecture tiers:

  • Dockerfile.api: Configured for building, testing, and running the core API with SonarQube scanner integrations.

  • Dockerfile.dashboard & Dockerfile.hangfire: Dedicated environment builds for the Hangfire background job scheduler and its dashboard UI.

  • Dockerfile.web: Node 18 setup for compiling the React single-page application into an Nginx server web container.

  • Orchestration: Added standard docker-compose.yml configurations along with local metrics setups (grafana, influxdb).

3. Backend Architecture (src/Strata.Analytics.*)

  • Api: Setup the controllers (Workbooks, Extracts, DataSources, etc.), custom authorization handlers, security roles, and application startup pipelines.
  • Biz: Implemented core business logic engines covering content migration helpers, Snowflake database wrappers, excel/csv exporters, calculation mappings, and Entity Framework Core migrations tracking database modifications.
  • Models & Client: Structured cross-cutting business data transfer models, saved workbook interfaces, and generated consumer clients.

4. Frontend Ecosystem (src/Strata.Analytics.Web/analytics)

  • React App: Setup a full single-page application architecture using TypeScript and Kendo UI.
  • Component Structure: Formed layout frameworks and services separating modules for:
  • dashboard: Modular rendering systems for widgets like bars, pies, bubbles, and text.
  • extract & datasource: UI layouts for connecting data warehouses and scheduling automated reports.
  • fields & filters: Intricate condition pickers, syntax helpers, and filter bars.

5. Verification & Quality Assurance

  • Unit Tests: Drafted the Strata.Analytics.Test.Unit project housing authorization mocks, mock database context factories, and granular extraction business unit rules.
  • Cypress Integration: Scaffolded end-to-end user-flow smoke tests under the cypress directory targeting search filters and security configurations.

Verification Plan

  • Build Check: Ensure container orchestration functions via docker-compose up -d --build.
  • API Verification: Access local endpoints (https://localhost:8443/index) to verify active Swagger documentation schema structures.
### Summary This PR introduces the foundational codebase and project structure for the **Strata.Analytics** application. It establishes the multi-project backend ecosystem (`.NET 6.0`), a frontend React dashboard built with TypeScript, initial testing frameworks, containerization scripts, and continuous integration pipeline badges. ### Core Changes #### 1. Repository & CI/CD Setup * **Documentation:** Added a comprehensive [[README.md](https://gitea.bermudalamb.synology.me/bermudalamb/analytics/compare/main...feature/initial-commit?expand=1)](https://gitea.bermudalamb.synology.me/bermudalamb/analytics/compare/main...feature/initial-commit?expand=1) featuring build status badges (GitHub Actions, Octopus Deploy, SonarQube, NuGet), branching strategies, and instructions for running the application via Docker Compose. * **Git Configuration:** Configured a tailored global `.gitignore` file mapping Visual Studio build artifacts, local history, and node modules. #### 2. Infrastructure & Containerization * **Dockerization:** Implemented specialized multi-stage `Dockerfiles` for various architecture tiers: * `Dockerfile.api`: Configured for building, testing, and running the core API with SonarQube scanner integrations. * `Dockerfile.dashboard` & `Dockerfile.hangfire`: Dedicated environment builds for the Hangfire background job scheduler and its dashboard UI. * `Dockerfile.web`: Node 18 setup for compiling the React single-page application into an Nginx server web container. * **Orchestration:** Added standard `docker-compose.yml` configurations along with local metrics setups (`grafana`, `influxdb`). #### 3. Backend Architecture (`src/Strata.Analytics.*`) * **Api:** Setup the controllers (`Workbooks`, `Extracts`, `DataSources`, etc.), custom authorization handlers, security roles, and application startup pipelines. * **Biz:** Implemented core business logic engines covering content migration helpers, Snowflake database wrappers, excel/csv exporters, calculation mappings, and Entity Framework Core migrations tracking database modifications. * **Models & Client:** Structured cross-cutting business data transfer models, saved workbook interfaces, and generated consumer clients. #### 4. Frontend Ecosystem (`src/Strata.Analytics.Web/analytics`) * **React App:** Setup a full single-page application architecture using TypeScript and Kendo UI. * **Component Structure:** Formed layout frameworks and services separating modules for: * `dashboard`: Modular rendering systems for widgets like bars, pies, bubbles, and text. * `extract` & `datasource`: UI layouts for connecting data warehouses and scheduling automated reports. * `fields` & `filters`: Intricate condition pickers, syntax helpers, and filter bars. #### 5. Verification & Quality Assurance * **Unit Tests:** Drafted the `Strata.Analytics.Test.Unit` project housing authorization mocks, mock database context factories, and granular extraction business unit rules. * **Cypress Integration:** Scaffolded end-to-end user-flow smoke tests under the `cypress` directory targeting search filters and security configurations. --- ### Verification Plan * **Build Check:** Ensure container orchestration functions via `docker-compose up -d --build`. * **API Verification:** Access local endpoints (`https://localhost:8443/index`) to verify active Swagger documentation schema structures.
bermudalamb added 1 commit 2026-06-23 11:20:26 -05:00
bermudalamb merged commit 83f4c5fd0e into main 2026-06-23 11:20:48 -05:00
bermudalamb deleted branch feature/initial-commit 2026-06-23 11:20:55 -05:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bermudalamb/analytics#1