Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,9 @@ jobs:
- name: Build
run: pnpm run build

- name: Lint
run: pnpm run lint

- name: Test
run: pnpm run test:ci

Expand Down
28 changes: 28 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,34 @@ website, the administrators have access to an overview of the submitted projects
the data at the data center, as well as have full control over the individual containers running on their systems and
manage which projects/analyses have access to the various datasets.

## API Types

Types come from two places, and the split matters.

**FLAME Hub entities** — `Analysis`, `AnalysisNode`, `Project`, `ProjectNode`, `Node`,
`Registry`, `RegistryProject`, `MasterImage` and their approval enums — are imported directly
from `@privateaim/core-kit`, and the shared `ProcessStatus` from `@privateaim/kit`. The
hub-adapter forwards Hub entities through unchanged, so the Hub is the source of truth for
their shape, and its packages are versioned in lockstep with the API that produces them.

**Everything the node owns** — kong, the pod-orchestrator, the event log, container logs,
node settings, health and auth — comes from `app/services/Api.ts`, generated from the
hub-adapter's OpenAPI document:

```bash
pnpm build-api
```

That document also carries the adapter's own copies of the Hub entities. They are still
generated but must not be used: an ESLint `no-restricted-imports` rule fails the lint if a
Hub entity name is imported from `~/services/Api`, because those copies drift from the Hub
whenever the adapter lags behind a release.

Hub fields are **camelCase** (`displayName`, `createdAt`, `buildStatus`) as of Hub 0.13.0.
Node-local fields are still snake_case (`created_at` on a kong route, `event_name`,
`start_date`). The two look alike and sit side by side in the same components — check which
service owns a field before renaming it.

## Required Environment Variables

This frontend requires the following environment variables to be set. The SSR framework used for this project (Nuxt)
Expand Down
Loading
Loading