Premiers pas
RayCraft Free provient de nuget.org. RayCraft Complete provient d'un flux NuGet privé et nécessite une licence active et un jeton d'accès.
1. RayCraft Free
dotnet add package RayCraft.Blazor 2. RayCraft Complete
Le flux est https://nuget.raycraft.dev/v3/index.json, le nom d'utilisateur est rcf et le mot de passe est votre jeton (il commence par rcf_).
- 1Créer un jeton
Connectez-vous à auth.raycraft.dev, ouvrez Accès aux paquets et créez un jeton. Il n'est affiché qu'une seule fois, copiez-le donc tout de suite. Vous pouvez avoir jusqu'à 10 jetons par licence ; un jeton révoqué cesse de fonctionner immédiatement.
- 2Ajouter le flux sur votre machine
La commande enregistre la source dans le
nuget.configde votre utilisateur, pas dans le projet.
dotnet nuget add source https://nuget.raycraft.dev/v3/index.json --name RayCraft --username rcf --password <YOUR_TOKEN> --store-password-in-clear-text --store-password-in-clear-text est nécessaire sous Linux, macOS et sur les agents de build. Sous Windows, vous pouvez l'omettre et le mot de passe est chiffré pour votre utilisateur.
Gardez le jeton secret. Ne le placez pas dans le dépôt, dans un nuget.config versionné, ni dans des e-mails au support (les 4 derniers caractères suffisent).
Serveur de build
Placez dans le dépôt un nuget.config qui lit le jeton depuis une variable, et définissez RAYCRAFT_FEED_TOKEN comme secret dans votre système de build.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="RayCraft" value="https://nuget.raycraft.dev/v3/index.json" />
</packageSources>
<packageSourceCredentials>
<RayCraft>
<add key="Username" value="rcf" />
<add key="ClearTextPassword" value="%RAYCRAFT_FEED_TOKEN%" />
</RayCraft>
</packageSourceCredentials>
</configuration> Installer les paquets
dotnet add package RayCraft.Blazor.Complete --source RayCraft
dotnet restore | Paquet | À quoi il sert |
|---|---|
RayCraft.Blazor.Complete | Composants, styles et scripts (le paquet principal). |
RayCraft.Blazor.Complete.Office | Contrôles pour documents, feuilles de calcul, présentations et PDF. Nécessite le paquet principal. |
RayCraft.Blazor.Complete.Editor | Éditeur de texte enrichi (HTML, Markdown, JSON et e-mail). Nécessite le paquet principal. |
RayCraft.Blazor.Complete.Office.Ocr.Tesseract | Facultatif : reconnaissance de texte dans les pages PDF numérisées (Windows uniquement). Nécessite Office. |
RayCraft.Blazor.Complete.Office.Ocr.Tesseract.Data | Modèles de langue pour le paquet précédent. |
N'installez pas le RayCraft.Blazor gratuit dans la même application que Complete : ils ont les mêmes noms d'assemblages et d'espaces de noms. Les paquets fonctionnent avec Server, WebAssembly et Auto.
Enregistrer et utiliser
Dans Program.cs (pour WebAssembly et Auto, aussi dans le projet client) :
using RayCraft.Blazor;
using RayCraft.Blazor.Office;
builder.Services.AddRayCraft();
builder.Services.AddRayCraftOffice(); Dans Components/App.razor, définissez le thème sur html et ajoutez les fichiers :
<html lang="en" data-raycraft-theme="light">
<head>
<link rel="stylesheet" href="_content/RayCraft.Blazor/css/raycraft.css" />
<link rel="stylesheet" href="_content/RayCraft.Blazor.Office/css/raycraft-office.css" />
</head>
<body>
<Routes @rendermode="InteractiveServer" />
<script src="_content/RayCraft.Blazor/raycraft.js"></script>
<script src="_framework/blazor.web.js"></script>
</body>
</html> Dans Components/_Imports.razor :
@using RayCraft.Blazor
@using RayCraft.Blazor.Components Les contrôles peuvent ensuite être utilisés directement, par exemple <ThemeMenu />, <DialogHost /> et <SnackbarHost />. La ligne AddRayCraftOffice et la feuille de style Office ne sont nécessaires qu'avec le paquet Office.
Le modèle dotnet new blazor contient son propre Components/Layout/NavMenu.razor avec le même nom de balise que le NavMenu du paquet, et la compilation s'arrête avec RZ9985. Supprimez-le et retirez son utilisation de MainLayout.razor.
Vérifier l'accès
Sans jeton, le flux répond 401, ce qui montre que l'adresse est correcte et que l'accès est protégé. Avec un jeton, une vérification en lecture seule :
curl -s -u rcf:$RAYCRAFT_FEED_TOKEN https://nuget.raycraft.dev/v3/index.json Résultat attendu : du JSON avec version et une liste resources.
Problèmes courants
| Symptôme | Cause |
|---|---|
| 401 ou 403 lors du restore | Le jeton est révoqué, la licence n'est pas active, ou une autre source du même nom remplace le flux. |
| Paquet introuvable | La version a été publiée après la fin de votre licence : renouvelez-la ou utilisez une version plus ancienne. |
| Fonctionne en local, pas sur le serveur de build | La variable du jeton n'est pas définie. |
Pour tout autre sujet, écrivez à support@raycraft.dev avec le nom et la version du paquet, la plateforme, la version de .NET et les lignes du flux issues de dotnet restore -v d (sans le jeton).