Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Fabric Alkalmazásprojektek egységes mappaelrendezést használnak, így gyorsan megtalálhatja az adatmodelleket, a háttérkonfigurációt és az előtérbeli kódot. Ez a cikk a projekt létrehozása után valószínűleg használt fájlokat és mappákat ismerteti.
Mappaelrendezés
Új Fabric Apps-projekt létrehozásakor a sablon a következő struktúrát hozza létre:
your-project/
├── rayfin/
│ ├── data/
│ │ ├── schema.ts
│ │ └── *.ts
│ ├── .env
│ ├── rayfin.yml
│ └── tsconfig.json
├── src/
├── package.json
├── tsconfig.json
└── README.md
Kulcskonfigurációs fájlok
rayfin/rayfin.yml
A rayfin/rayfin.yml fájl a Fabric Apps háttérrendszerének fő konfigurációs fájlja. Szabályozza, hogy mely szolgáltatások futnak a helyi fejlesztés során, és támogatja a környezeti változók interpolációját a dinamikus konfigurációs értékekhez.
Teljes példa:
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
A konfiguráció a következő kulcsmezőket tartalmazza:
Felső szintű mezők
| Field | Típus | Szükséges | Leírás |
|---|---|---|---|
id |
string |
Igen | A Docker Compose-projektnévként és Fabric-elemazonosítóként használt projektslug. |
name |
string |
Igen | Ember által olvasható projekt megjelenítendő neve. |
version |
string |
Igen | Projektverzió (semver). |
services |
object |
Igen | Szolgáltatáskonfigurációs blokk. |
services.data
| Field | Típus | Alapértelmezett | Leírás |
|---|---|---|---|
enabled |
boolean |
false |
Engedélyezze az adatszolgáltatást. |
services.auth
| Field | Típus | Alapértelmezett | Leírás |
|---|---|---|---|
enabled |
boolean |
false |
Engedélyezze a hitelesítési szolgáltatást. |
expiryInMinutes |
number |
— | JWT-token lejárati ideje percben. |
customClaims |
Record<string, string> |
— | A kiadott JWT-khez hozzáadva egyéni állítások. |
scopes |
string[] |
— | OAuth-hatókörök (például ["read:data", "write:data"]). |
refreshToken.lifetimeInDays |
number |
— | A frissítési token élettartama napokban. |
allowedRedirectUris |
string[] |
["http://localhost:5173"] |
Engedélyezett átirányítási URI-k hitelesítéses visszahívásokhoz. |
services.auth.password
| Field | Típus | Alapértelmezett | Leírás |
|---|---|---|---|
enabled |
boolean |
true |
E-mail- és jelszóhitelesítés engedélyezése helyi fejlesztéshez |
services.auth.fabric
| Field | Típus | Alapértelmezett | Leírás |
|---|---|---|---|
enabled |
boolean |
false |
Engedélyezze Fabric közvetítőalapú hitelesítést (Microsoft Entra ID egyszeri bejelentkezést). |
services.staticHosting
| Field | Típus | Alapértelmezett | Leírás |
|---|---|---|---|
enabled |
boolean |
false |
Statikus tartalom üzemeltetésének engedélyezése. |
root |
string |
— | A frontend projekt gyökérkönyvtára (a projekt gyökérkönyvtárához viszonyítva). |
folder |
string |
"dist" |
A létrehozott statikus erőforrásokat tartalmazó könyvtár (a(z) root könyvtárhoz viszonyítva). |
buildCommand |
string |
— | A csomagolás előtt futtatandó Shell-parancs (például npm run build). |
indexDocument |
string |
— | A gyökér elérési úthoz kiszolgált alapértelmezett dokumentum (például index.html). |
Jótanács
Minden karakterláncérték támogatja a környezeti változók interpolációját a ${VAR} és ${VAR:-default} szintaxis használatával. A változók feloldása a(z) rayfin/.env és a parancsértelmező környezetéből történik.
rayfin/.env
A rayfin/.env fájl egy opcionális környezeti fájl, amely a(z) rayfin.yml értékeinek interpolációval történő megadására szolgál. Ne commitoljon titkos adatokat a repozitóriumba. Ehelyett hozzon létre egy rayfin/.env.example fájlt dokumentációs célokra, és adja hozzá .env a .gitignore fájlhoz.
rayfin/tsconfig.json
A rayfin/tsconfig.json fájl egy projektreferencia-TypeScript-konfiguráció, amelyet a Fabric Apps CLI az entitásdefiníciók lefordításához használ. Kibővíti a gyökérszintű tsconfig.json elemet, és felülírja a Fabric-alkalmazások számára szükséges beállításokat, például a composite: true elemet és a Node.js-modulok feloldását. Nem kell közvetlenül szerkesztenie ezt a fájlt.
Adatmodell-fájlok
rayfin/data/*.ts
A mappában lévő rayfin/data/ fájlok határozzák meg az entitásokat. Az entitások olyan TypeScript-osztályok, amelyeket a @entity(), valamint meződekorátorok, például a @uuid() és @text() dekorálnak. Minden entitásfájl exportál egy osztályt, amely egy adatmodellt jelöl az alkalmazásban.
rayfin/data/schema.ts
A rayfin/data/schema.ts fájl leképozza az entitásneveket az osztályaikra. A Rayfin SDK-ügyfél ezen a térképen keresztül biztosít típusbiztos hozzáférést az entitásokhoz client.data.<Entity>. Új entitás hozzáadásakor regisztrálnia kell azt ebben a sémafájlban.
Generált artefaktumok
rayfin/.temp/
A rayfin/.temp/ mappa olyan létrehozott háttérösszetevőket tartalmaz, amelyek a fejlesztési kiszolgáló futtatásakor jönnek létre. Ha úgy tűnik, hogy a háttérrendszer elavult sémát vagy konfigurációt használ, állítsa le és indítsa újra a fejlesztői vermet a fájlok újragenerálásához.
Important
Ne véglegesítse a .temp/ mappát az adattárban. Adja hozzá a .gitignore fájlhoz.
Frontend struktúra
A src/ mappa tartalmazza az előtéralkalmazás kódját. A pontos struktúra attól függ, hogy a projekt létrehozásakor melyik sablont választotta, például a Reactet vagy a Vue-t.
Fabric Alkalmazássablonok a következő Vite környezeti változókat használják az előtérbeli konfigurációhoz:
-
VITE_RAYFIN_API_URL– A frontendet a Fabric Apps háttérrendszerére irányító alapértelmezett URL-cím. Állítsa be ezt a környezeti változót anpm run devfuttatása előtt az alapértelmezett érték felülbírálásához. -
VITE_RAYFIN_PUBLISHABLE_KEY– Az ügyfélhitelesítéshez használt közzétételi kulcs. -
VITE_FABRIC_ITEM_ID– A(z)rayfin upáltal beállított Fabric-elemazonosító. Az üzembe helyezés során ide lesz írva:.env.fabric-<workspacename>(és.env.fabric). Fabric közvetítőalapú hitelesítéséhez használatos. -
VITE_FABRIC_WORKSPACE_ID– Fabricrayfin upáltal beállított munkaterület-azonosító. Az üzembe helyezés során a(z)VITE_FABRIC_ITEM_IDelemmel együtt íródik.