NodeTool is a React/TypeScript application for building AI workflows visually. Key technologies:
- **Frontend (Web)**: React 18.2, TypeScript 5.7, Vite 6, Material-UI (MUI) v7
- **State Management**: Zustand
Copilot Instructions for React Native Windows Samples
## Repository Overview
This repository contains React Native samples, components, and templates for Windows, macOS, and Duo. It serves as a companion
GitHub Pages landing page** at https://microsoft.github.io/Power-CAT-Copilot-Studio-Kit/
built from `site-src/` (Vite + React 19 + Fluent UI v9 + TypeScript) and
deployed from `docs/` on the `feature/github-pages-agent` branch.
- **Documentation** under `docs
human-owned. Copilot and all other AI agents must never
comment, reply, review, react, resolve threads, or edit/close/reopen public
PR/issue text or metadata. Draft text for a human maintainer instead
Accessibility Check
Before writing or modifying any web UI code - including HTML, JSX, CSS, React components, Tailwind classes, web pages, forms, modals, or any user-facing web content - you MUST
powered local bridge server (HTTP + WebSocket) that talks
to the local Herdr socket.
- `web/src`: React + Vite frontend dashboard. Reusable UI lives in
`web/src/components`, assets in `web/src/assets`, global styling in
`web/src/styles.css
src/api-py` FastAPI REST API in Python
- `src/api-java` Spring Boot REST API in Java
- `src/frontend` React + Vite + Tailwind UI (shared across all API variants)
- `src/database` SQLite schema — `src/database/migrations/` and `src/database/seed/`
- `src/Makefile
server
## Testing
- We use `vitest` for testing
- We use `@testing-library/react` for testing React components
- Tests are placed in the same folder as the component they are testing
json-schema`),
- the Dynatrace app framework (`dt-app`),
- `vite` / `vite-plugin-singlefile` and `react` for the UI part of the project,
- and `@dynatrace` as well as `@dynatrace-sdk` packages.
Avoid
bootstrapping for all modes.
### Global State (Module Singletons + Zustand)
State is **not** managed by React Context or Redux for most application concerns. Instead:
- **`userContext`** (`src/UserContext.ts`) – Module-level singleton holding current