Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Fabric Apps-projekter bruger et ensartet mappelayout, så du hurtigt kan finde datamodeller, backend-konfiguration og frontend-kode. Denne artikel forklarer de filer og mapper, du sandsynligvis vil arbejde med, efter du har oprettet et projekt.
Mappelayout
Når du opretter et nyt Fabric Apps-projekt, genererer skabelonen følgende struktur:
your-project/
├── rayfin/
│ ├── data/
│ │ ├── schema.ts
│ │ └── *.ts
│ ├── .env
│ ├── rayfin.yml
│ └── tsconfig.json
├── src/
├── package.json
├── tsconfig.json
└── README.md
Nøglekonfigurationsfiler
Rayfin/rayfin.yml
rayfin/rayfin.yml-filen er hovedkonfigurationsfilen for din Fabric Apps backend. Den styrer, hvilke tjenester der kører under lokal udvikling, og understøtter interpolation af miljøvariabler for dynamiske konfigurationsværdier.
Fuldt eksempel:
id: my-app
name: my-app
version: 1.0.0
services:
auth:
enabled: true
expiryInMinutes: 60
refreshToken:
lifetimeInDays: 30
customClaims:
tenant: "default"
scopes:
- read:data
- write:data
allowedRedirectUris:
- http://localhost:5173
- http://localhost:5173/auth/callback
password:
enabled: true
fabric:
enabled: false
passwordless:
magicLink:
enabled: false
expiryMinutes: 15
smsOtp:
enabled: false
email:
enabled: false
provider: smtp
senderName: Rayfin Platform
verificationTokenExpirationHours: 24
passwordResetTokenExpirationMinutes: 30
smtp:
host: maildev
port: 1025
senderEmail: noreply@rayfin.local
username: ""
password: ""
useSsl: false
useStartTls: false
webPort: 1080
data:
enabled: true
dialect: mssql
storage:
enabled: false
staticHosting:
enabled: true
root: .
folder: dist
buildCommand: npm run build
indexDocument: index.html
Konfigurationen inkluderer disse nøglefelter:
Topniveau-felter
| Felt | Type | Påkrævet | Beskrivelse |
|---|---|---|---|
id |
string |
Ja | Project slug bruges som Docker Compose project navn og Fabric item identifier. |
name |
string |
Ja | Menneskeligt læsbart projektvisningsnavn. |
version |
string |
Ja | Project-version (semver). |
services |
object |
Ja | Servicekonfigurationsblok. |
services.data
| Felt | Type | Standardindstilling | Beskrivelse |
|---|---|---|---|
enabled |
boolean |
false |
Aktivér datatjenesten. |
services.auth
| Felt | Type | Standardindstilling | Beskrivelse |
|---|---|---|---|
enabled |
boolean |
false |
Aktivér autentificeringstjenesten. |
expiryInMinutes |
number |
– | JWT-tokenet udløber om få minutter. |
customClaims |
Record<string, string> |
– | Toldkrav tilføjet til udstedte JWT'er. |
scopes |
string[] |
– | OAuth-scopes (for eksempel, ["read:data", "write:data"]). |
refreshToken.lifetimeInDays |
number |
– | Opdater tokenets levetid i dage. |
allowedRedirectUris |
string[] |
["http://localhost:5173"] |
Tillod omdirigerings-URI'er til godkendelses-callbacks. |
services.auth.password
| Felt | Type | Standardindstilling | Beskrivelse |
|---|---|---|---|
enabled |
boolean |
true |
Aktiver e-mail- og adgangskodeautentificering til lokal udvikling |
services.auth.fabric
| Felt | Type | Standardindstilling | Beskrivelse |
|---|---|---|---|
enabled |
boolean |
false |
Aktiver Fabric brokered authentication (Microsoft Entra ID SSO). |
services.staticHosting
| Felt | Type | Standardindstilling | Beskrivelse |
|---|---|---|---|
enabled |
boolean |
false |
Aktivér hosting af statisk indhold. |
root |
string |
– | Rodmappen for frontend-projektet (i forhold til projektets rod). |
folder |
string |
"dist" |
Mappe, der indeholder byggede statiske assets (relativt til root). |
buildCommand |
string |
– | Shell-kommandoen skal køre før pakning (for eksempel, npm run build). |
indexDocument |
string |
– | Standarddokument leveret for rodstien (for eksempel index.html). |
Tip
Alle strengværdier understøtter interpolation af miljøvariabler med ${VAR} og syntaks ${VAR:-default} . Variabler opløses fra rayfin/.env og shell-miljøet.
rayfin/.env
Filen rayfin/.env er en valgfri miljøfil, der bruges til at levere værdier til rayfin.yml gennem interpolation. Lad være med at lægge hemmeligheder i dit arkiv. Opret i stedet en rayfin/.env.example fil til dokumentationsformål og tilføj .env til din .gitignore fil.
Rayfin/tsconfig.json
rayfin/tsconfig.json-filen er en projektreference TypeScript-konfiguration, der bruges af Fabric Apps CLI til at kompilere dine entitetsdefinitioner. Den udvider din root tsconfig.json og overskriver de indstillinger, som Fabric Apps har brug for, såsom composite: true og Node.js modulopløsning. Du burde ikke behøve at redigere denne fil direkte.
Datamodelfiler
Rayfin/Data/*.ts
Filerne i mappen definerer rayfin/data/ dine enheder. Entiteter er TypeScript-klasser dekoreret med @entity() plus feltdekoratorer som @uuid() og @text(). Hver enhedsfil eksporterer en klasse, der repræsenterer en datamodel i din applikation.
Rayfin/Data/schema.ts
Filen rayfin/data/schema.ts kortlægger entitetsnavne til deres klasser. Rayfin SDK-klienten bruger dette kort til at give type-sikker adgang til enheder gennem client.data.<Entity>. Når du tilføjer en ny entitet, skal du registrere den i denne skemafil.
Genererede artefakter
rayfin/.temp/
Mappen rayfin/.temp/ indeholder genererede backend-artefakter, der oprettes, når du kører udviklingsserveren. Hvis backenden ser ud til at bruge forældet skema eller konfiguration, stop og genstart udviklingsstakken for at generere disse filer.
Vigtig
Commit .temp/ ikke mappen til dit repository. Tilføj det til din .gitignore fil.
Frontendstruktur
Mappen src/ indeholder din frontend-applikationskode. Den præcise struktur afhænger af, hvilken skabelon du valgte, når du lavede dit projekt, såsom React eller Vue.
Fabric Apps-skabeloner bruger følgende Vite-miljøvariabler til frontend-konfiguration:
-
VITE_RAYFIN_API_URL– Basis-URL, der peger frontend mod Fabric Apps backend. Sæt denne miljøvariabel før kørselnpm run devtil at tilsidesætte standarden. -
VITE_RAYFIN_PUBLISHABLE_KEY– Publicerbar nøgle brugt til klientautentificering. -
VITE_FABRIC_ITEM_ID– Fabric vare-ID sat medrayfin up. Skrevet til.env.fabric-<workspacename>(og.env.fabric) under udsendelse. Bruges til Fabric brokered authentication. -
VITE_FABRIC_WORKSPACE_ID– Fabric arbejdsområde-ID sat afrayfin up. Skrevet ved siden afVITE_FABRIC_ITEM_IDunder udsendelsen.